Bài viết đề xuất khái niệm khả nghịch mở rộng, chúng tôi sẽ giới thiệu một lớp đặc biệt của các vành đa thức bậc hữu hạn hệ số nhị phân trong đó tất cả các đa thức đều khả nghịch hoặc khả nghịch mở rộng. Bằng cách khai thác các phần tử này, bài viết đề xuất một sơ đồ mật mã mới có tên là E-RISKE và chứng minh về mặt lý thuyết rằng hệ mật này không những tính toán hiệu quả mà còn chống lại được tấn công phân biệt bằng bản bản rõ được chọn (hay còn gọi là IND-CPA). Mời các bạn cùng tham khảo!
Trang 1E-RISKE, một sơ đồ mật mã khóa bí mật dựa trên các phần tử khả nghịch và khả nghịch mở rộng trong các vành đa thức bậc hữu hạn hệ số
nhị phân có hai lớp kề cyclic
Cao Minh Thắng∗, Nguyễn Bình∗, Hoàng Mạnh Thắng∗, Nguyễn Ngọc Quân∗
∗ Học Viện Công Nghệ Bưu Chính Viễn Thông Email: {thangcm, nguyenbinh, thanghm, quannn}@ptit.edu.vn
Tóm tắt—Các phần tử khả nghịch trong vành đa thức
bậc hữu hạn đã được khai thác để xây dựng một số hệ
mật khóa công khai thú vị như NTRU và pNE Trong bài
báo này, sau khi đề xuất khái niệm "khả nghịch mở rộng",
chúng tôi sẽ giới thiệu một lớp đặc biệt của các vành đa
thức bậc hữu hạn hệ số nhị phân trong đó tất cả các đa
thức đều khả nghịch hoặc khả nghịch mở rộng Bằng cách
khai thác các phần tử này, chúng tôi đề xuất một sơ đồ
mật mã mới có tên là E-RISKE và chứng minh về mặt lý
thuyết rằng hệ mật này không những tính toán hiệu quả
mà còn chống lại được tấn công phân biệt bằng bản bản
rõ được chọn (hay còn gọi là IND-CPA).
Từ khóa—Sơ đồ mật mã, khóa bí mật, vành đa thức
bậc hữu hạn hệ số nhị phân, hai lớp kề cyclic, phần tử
khả nghịch mở rộng.
I GIỚI THIỆU
Ứng dụng của các phần tử khả nghịch trên vành đa
thức Rn,q = Zq[x]/(x n
− 1) trong mật mã rất phổ biến,
điển hình là hệ mật khóa công khai xác suất nổi tiếng
NTRU [2] và các biến thể như CTRU [3] và đặc biệt là
pNE [6], một hệ mật dựa trên vành R2s ,q |s ∈ Z+, cho
đến nay có thể coi là biến thể duy nhật của NTRU có
độ an toàn chứng minh được
Lợi ích của việc sử dụng các phần tử khả nghịch trong
mật mã là tốc độ tính toán Cụ thể là, phép nhân modulo
trong vành đa thức Rn,q chỉ cần O(n2)phép tính Bằng
cách khai thác đặc điểm này, cùng với độ an toàn liên
quan tới một số bài toán khó trên dàn, NTRU có tốc
độ tính toán nhanh hơn các sơ đồ mật mã dựa trên số
nguyên và logarit rời rạc trên trường hữu hạn và đường
cong eliptic Hệ quả là, hệ mật này đã được chuẩn hóa
bởi IEEE trong tiêu chuẩn P.1363.1 năm 2008 và được
coi là một đề cử thay thế các hệ mật khoá công khai
truyền thống
Vành đa thức bậc hữu hạn hệ số nhị phân Rn =
Z2[x]/(x n + 1), một lớp của Rn,q, mặc dù được sử
dụng phổ biến trong mã sửa sai nhưng đã không được
ứng dụng rộng rãi trong mật mã loại trừ lớp vành Rn,2 với n = 2 N |N ∈ Z+ Năm 2002, các nhóm nhân cyclic
trong R2k ,2 đã được khai thác để để xây dựng một hệ mật khóa bí mật [7] và hệ mật này sau đó được để xuất như là một phiên bản mới của DES [8]
Mục II của bài báo trình bày một số khái niệm về
sơ đồ mật mã và độ an toàn chứng minh được Trong mục III, với khái niệm "khả nghịch mở rộng", chúng
tôi giới thiệu một lớp đặc biệt của Rn,2trong đó có số các phần tử khả nghịch (và tương ứng là số các phần tử khả nghịch mở rộng) là rất lớn (Định lý 1) Bằng cách khai thác tập phần tử đó, trong phần IV, chúng tôi đề xuất một sơ đồ mật mã khóa bí mật xác suất có tên
là E-RISKE (Extended Random Invertible Secret-Key Encryption scheme) với tốc độ tính toán nhanh và được chứng minh là an toàn với các tấn công nghe lén (IND-EAV) trong định lý 2 và tấn công phân biệt bằng bản
rõ được chọn (IND-CPA) trong định lý 3 Kết luận và
đề xuất hướng nghiên cứu tiếp theo được đề cập trong mục V
II CÁC KHÁI NIỆMIND-EAVVÀIND-CPA Trong phần này, ta sẽ nhắc lại một số khái niệm về
sơ đồ mật mã có độ an toàn chứng minh được
Định nghĩa 1 Một sơ đồ mật mã Π(G, E, D, K, P, C),
gồm 3 thuật toán là sinh khóa G, mã hóa E và giải mã
D cùng với 3 không gian là không gian bản rõ P, không gian bản mã C, và không gian khóa K.
Định nghĩa 2 (Định nghĩa 3.4 trong [1]) Với n ∈ Z+, hàm f(n) được gọi là "không đáng kể" (negligible) với biến n khi với mọi đa thức p(n) đều tồn tại một số tự nhiên N0 thỏa mãn ∀n > N0 ta đều có f(n) < 1
p(n)
Trang 2
Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)
Định đề 1 2−n và theo đó 1
2(n −1) −1 đều là các hàm không đáng kể với biến n.
Định đề 2 Nếu p(n) là một đa thức của n và f(n) là
một hàm không đáng kể với biến n thì p(n).f(n) cũng
là một hàm không đáng kể với biến n.
Định nghĩa 3 Tấn công phân biệt bằng nghe lén
(IND-EAV-ATK: Eavesdropping Indistinghuisability Attack)
đối với một sơ đồ mã hóa khóa bí mật, ký hiệu là
SecKeav A,Π (n) , được mô tả như sau:[1]
1) Kẻ nghe lén (eavesdropper) A chọn một cặp bản
rõ m0, m1 có cùng chiều dài trong không gian
bản rõ và gửi tới bộ mã hoá Chú ý rằng độ dài
của cặp bản tin m0, m1có thể khác độ dài n của
khoá bí mật k.
2) Bộ mã hoá chọn ngẫu nhiên một khóa k ∈ K có độ
dài n bit và chọn ngẫu nhiên một bit b ← {0, 1}
để tính một bản mã c ← E k (mb) được tính toán
và trả lại cho A.
3) Khi nhận được c, A thực hiện tính toán và đưa ra
giá trị b �
4) Kết quả của tấn công trả về là 1 nếu b � = b và 0
trong trường hợp còn lại Nếu SecK eav
A,Π (n) = 1 thì có thể nói A đã thực hiện thành công loại tấn
công này.
Định nghĩa 4 Thí nghiệm tấn công phân biệt bằng bản
rõ được chọn (IND-CPA-ATK: Chosen Plain-text Attack
Indistinghuishability Attack) đối với một sơ đồ mã hoá
khoá bí mật trong [1], ký hiệu là SecK cpa
A,Π (n) , được mô
tả như sau: [1]
1) Kẻ tấn công A được quyền truy cập không giới
hạn tới bộ mã hoá A chọn một cặp bản rõ m0, m1
có cùng chiều dài trong không gian bản rõ và gửi
tới bộ mã hoá Chú ý rằng độ dài của cặp bản tin
m0, m1 có thể khác độ dài n của khoá bí mật k.
2) Bộ mã hoá chọn ngẫu nhiên một khóa k ∈ K có độ
dài n bit và chọn ngẫu nhiên một bit b ← {0, 1}
để tính một bản mã c ← E k (mb) và trả lại cho A.
3) A có thể tiếp tục truy nhập không giới hạn số lần
tới bộ mã hoá.
4) Kết quả của thí nghiệm trả về là 1 nếu b � = b và
0 trong trường hợp còn lại Nếu SecK cpa
A,Π (n) = 1 thì có thể nói A đã thực hiện thành công loại tấn
công này.
Định nghĩa 5 [1] Một sơ đồ mã hóa khóa bí mật Π
được gọi là an toàn với tấn công phân biệt bằng nghe
lén, viết tắt là IND-EAV, nếu xác suất để thí nghiệm
IND-EAV-ATK thành công là không đáng kể hay
Pr[SecKeav A,Π (n) = 1] ≤12 + μ(n).
với μ(n) là một hàm không đáng kể của n.
Định nghĩa 6 [1] Một sơ đồ mã hóa khóa bí mật Π
được gọi là an toàn với tấn công phân biệt bằng bản
rõ được chọn, viết tắt là IND-CPA, nếu xác suất để thí nghiệm IND-CPA-ATK thành công là không đáng kể hay
Pr[SecKcpa A,Π (n) = 1] ≤12 + μ(n).
với μ(n) là một hàm không đáng kể của n.
Có thể thấy, loại hình tấn công IND-CPA-ATK, trong
đó kẻ tấn công có thể truy cập không giới hạn tới thủ
tục mã hóa E, là mạnh hơn tấn công IND-EVA-ATK.
Do đó, ta có thể coi IND-CPA là an toàn hơn IND-EAV III CÁC PHẦN TỬ KHẢ NGHỊCH VÀ KHẢ NGHỊCH MỞ RỘNG TRÊN VÀNH ĐA BẬC HỮU HẠN HỆ SỐ NHỊ PHÂN
Trong phần này, chúng tôi sẽ tập trung vào các vành
đa thức nhị phân hữu hạn và các phân tử khả nghịch cũng như khả nghịch mở rộng của nó Để thuận tiện, ta
ký hiệu GF (2)[x]/(x n+ 1)|n ∈ Z+là Rn với giá trị 2
là ngầm định
A Các định nghĩa và ký hiệu
Định nghĩa 7 Vành đa thức bậc hữu hạn hệ số nhị phân
R n là tập các đa thức f có bậc nhỏ một số nguyên n
và các hệ số nằm trong GF (2).
Một phần tử f ∈ R n có thể được biểu diễn là
f =
n−1
i=0
f i
dưới định dạng đa thức hoặc
f = (f0, f1, , f n −1) dưới định dạng vector
Trong Rn , toán tử nhân được ký hiệu là ∗, được hiểu
là phép nhân module x n+ 1, nghĩa là nếu h = f ∗ g thì
hcó hệ số
i+j=k mod n
f i g j) mod 2
với 0 ≤ k ≤ n − 1.
Bên cạnh đó, phép cộng trong Rnđược ký hiệu là +
và như vậy nếu h = f + g thì
h =
n −1
i=0
h i
Trang 3
với hi = (fi + gi) mod 2.
Định nghĩa 8 Trọng số Hamming của đa thức f ∈ R n
được ký hiệu là w(f).
Định nghĩa 9 Một đa thức f ∈ R n được gọi là khả
nghịch nếu tồn tại đa thức g ∈ R n thỏa mãn f ∗ g = 1.
Để thuận lợi, ta ký hiệu tập các đa thức khả nghịch
trong Rn là In.
Định nghĩa 10 Trong R n , một đa thức e được gọi là
lũy đẳng nếu e2= e
Trong Rn, e1= 1là một lũy đẳng tầm thường Với n
lẻ ta có thể thấy rằng e 0n =n−1
i=0 x i cũng là một lũy đẳng
Định nghĩa 11 Tỉ lệ số các phần tử khả nghịch trên
tổng số các đa thức trong R n được ký hiệu là K n
Vì các đa thức khả nghịch luôn có trọng số
Ham-ming lẻ nên giá trị lớn nhất của Kn là max(Kn) =
max(|I n |)/|R n | = 1/2.
B Trọng số Hamming của các đa thức khả nghịch
Bổ đề 1 Trong R n , nếu w(f) = 2k, w(g) = 2l|k, l ∈
Z+ thì w(f + g) chẵn.
Chứng minh: Với
f =N−1
i=0 f i x i và g =N−1i=0 g i x i ta có
h = f + g =N −1
i=0 h i x i với hi = (fi + gi) mod 2.
Vì fi , g i ∈ GF (2) nên h i= 0khi và chỉ khi fi = gi.
Gọi S là tập hợp chứa các giá trị i thỏa mãn fi = gi= 1
Dễ thấy
w(h) = w(f ) − |S| + w(g) − |S| = 2(k + l − |S|).
Tổng quát hơn, nếu h là tổng của các đa thức có trọng
số Hamming chẵn thì w(h) cũng chẵn.
Bổ đề 2 Trong R n , nếu w(f) chẵn thì ∀g ∈ R n , w(g ∗
f ) luôn chẵn.
Chứng minh: Giả sử g có dạng
g =n−1
i=0 g i x i ta có
h = g ∗ f =
N−1
i=0
g i x i ∗ f.
Vì w(gi x i
∗ f) = g i w(f )và luôn chẵn do đó, theo bổ
đề 1, w(h) cũng chẵn.
Bổ đề 3 Trong R n , tất cả các đa thức có trọng số Hamming chẵn đều không khả nghịch.
Chứng minh: Giả sử f ∈ R n là một đa thức có
trọng số Hamming chẵn Theo bổ đề 2 thì ∀g ∈ R n, w(f ∗ g) luôn chẵn hay nói cách khác không tồn tại bất kỳ đa thức h nào thỏa mãn w(f ∗ h) lẻ Mặt khác w(1) = 1là một số lẻ Do đó, ta có thể kết luận không
tồn tại đa thức h thoả mãn w(f ∗ h) = 1 hay f không
khả nghịch
C Lũy đẳng nuốt và khả nghịch mở rộng
Bổ đề 4 Trong R n , với e 0n = n−1
i=0 x i , ta luôn có
f ∗ e 0n = (w(f ) mod 2).e 0n ∀f ∈ R n Chứng minh: Giả sử f =n−1i=0 f i x i ta có
f.x0= f0+ f1.x + · · · + f n −1 x n −1 f.x1= fn −1 + f0.x + · · · + f n −2 x n−1
f.x n−1 = f1+ f2.x + · · · + f0.x n−1
và
f.e 0n=
n −1
i=0
f i x i=
n −1
i=0
((
n−1
j=0
f j ) mod 2).x i
=
n −1
i=0 (w(f ) mod 2).x i = (w(f ) mod 2).
n −1
i=0
x i
= (w(f ) mod 2).e 0n
Bổ đề 5 Trong R n với n lẻ, đa thức
e 0n =n −1
i=0 f i x i
là lũy đẳng.
Chứng minh: Ta có
e20n = e 0n ∗ (1 +
n −1
i=1
f i x i)
= e 0n + e 0n ∗
n −1
i=1
f i x i
Vì n lẻ, w(n−1
i=1 x i)luôn chẵn nên theo bổ đề 4,
e 0n ∗
n−1
i=0
= 0
và e2
0n = e 0n Do đó, theo định nghĩa 10, e 0n là lũy
đẳng trong Rn.
Trang 4
Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)
Định nghĩa 12 Trong R n , một lũy đẳng e được gọi là
lũy đẳng nuốt khi
f ∗ e = (w(f) mod 2).e
∀f ∈ R n
Chú ý rằng, trong Rn với n lẻ thì e 0n=n−1
i=0 x i là một lũy đẳng nuốt
Định nghĩa 13 Trong R n , một đa thức f � = f + e 0n
được gọi là đa thức bù của f.
Như vậy, rõ ràng f cũng là một đa thức bù của f �
trong Rn.
Định nghĩa 14 Trong R n với n lẻ, nếu một đa thức f
được gọi là khả nghịch mở rộng nếu tồn tại thức g ∈ R n
thỏa mãn
f ∗ g = (e 0n + 1).
Trong trường hợp này, g được gọi là nghịch đảo mở
rộng của f trong R n
Để thuận tiện, ta ký hiệu tập các đa thức khả nghịch
mở rộng trong Rn là En.
Bổ đề 6 Trong R n với n lẻ, nếu đa thức f khả nghịch
với nghịch đảo g thì
f � = f + e 0n
là một đa thức khả nghịch mở rộng với nghịch đảo mở
rộng là
g � = g + e 0n Chứng minh: Ta có
f � ∗ g � = (f + e 0n)∗ (g + e 0n)
= (f ∗ g + e2
0n + (f + g) ∗ e 0n)
= (1 + e 0n + (f + g) ∗ e 0n)
Vì cả w(f) và w(g) đều lẻ, nên w(f + g) luôn chẵn.
Do đó, theo bổ đề 5, (f + g) ∗ e 0n= 0 Hệ quả là,
f � ∗ g � = e 0n+ 1
Vì w(f) và w(e 0n) luôn lẻ khi n lẻ nên w(f �) =
w(f + e 0n) luôn chẵn Do đó, có thể thấy rằng trọng
số Hamming của một đa thức khả nghịch mở rộng luôn
chẵn
Ví dụ, trong R5, f = x4+ x3+ 1 khả nghịch với
nghịch đảo làg = x4+ x3+ x Đa thức f � = f + e05=
x2+ xlà khả nghịch mở rộng với nghịch đảo mở rộng
là g � = g + e05= x2+ 1
Bổ đề 7 Trong R n với n lẻ, chọn k ∈ E n với nghịch đảo mở rộng là k −1
e , nếu biết c = m ∗ k và w(m) thì
ta có thể tính được
m = (w(m) mod 2).e 0n + k −1 e ∗ c Chứng minh: Do k −1
e ∗ k = e 0n+ 1, nên
k e −1 ∗ c = k e −1 ∗ c = k −1 e ∗ k ∗ m
= (e 0n+ 1)∗ m = m + (w(m) mod 2).e 0n
Hệ quả là, m = (w(m) mod 2).e 0n + k −1
e ∗ c
Ví dụ, trong R5, k = x2+ xlà nghịch đảo mở rộng
của k −1
e = x2+ 1
Với m = x3+ x ta có
c = m ∗ k −1 e = x4+ x3+ x2+ 1
và vì w(m) mod 2 = 0 nên
m = k ∗ c = (x2+ x) ∗ (x4+ x3+ x2+ 1)
= (x3+ x).
Trong trường hợp m = x3+ x + 1, ta có
c = m ∗ k e −1 = (x3+ x2+ x + 1)
và vì w(m) = 3 hay w(m) mod 2 = 1, nên
m = e05+ k ∗ c
= (x4+ x3+ x2+ x + 1) + (x2+ x) ∗ (x3+ x2+ x + 1)
= (x3+ x + 1).
D Khả nghịch và khả nghịch mở rộng trên vành đa thức hữu hạn có hai lớp kề cyclic
Định nghĩa 15 Tập của các số nguyên n thỏa mãn
x n + 1 = (x + 1) ∗ T với T =ni=0 −1 x i là một đa thức bất khả quy trong GF (2) được ký hiệu là N 2C Trong trường hợp này, R n được gọi là vành đa thức bậc hữu hạn hệ số nhị phân có hai lớp kề cyclic.
Theo thuật toán trong [4], ta có thể tính được N 2C
Một vài giá trị ví dụ của n ∈ N 2C là
{3, 5, 11, 13, 19, 29, 37, 53, 59, 61, 67, 83, 101,
1019, 1061, 1091, 1109, 1117, 1123, 1171, 1187,
2053, 2069, 2083, 2099, 2131, 2141, 2213, 2221,
4091, 4093, 4099, 4133, 4139, 4157, 4219, 4229, } [4] cũng chỉ ra rằng tất cả n ∈ N 2C đều là nguyên tố lẻ
Định lý 1 Trong R n |n ∈ N 2C , tất cả các đa thức trong
I n \T là khả nghịch Do đó số phần tử khả nghịch trong những vành đa thức đó là 2 n−1 − 1.
Trang 5
Chứng minh: Theo [4], nếu R n |n ∈ N 2C thì n lẻ,
do đó w(T ) cũng lẻ Vì deg T = n−1 có giá trị lớn nhất
là max deg f|f ∈ R n và T là bất khả quy trên GF (2)
nên theo định nghĩa??, gcd(f, T ) = 1 ∀f ∈ I n \ T
Hơn nữa, nếu f ∈ I 2C [x] \ T thì gcd(f, x n+ 1) =
gcd(f, (x+1) ∗T ) = 1 Theo định lý Euclid, luôn tồn tại
hai đa thức u, v ∈ R n thỏa mãn u ∗f +v ∗(x n+ 1) = 1
hay u ∗ f = 1 Điều này chứng tỏ f là khả nghịch với
phần tử nghịch đảo u nào đó.
Theo [5], m = 2 n−1 − 1 là cấp lớn nhất của các đa
thức trong In \T tức là, f m= 1và u = f m−1là nghịch
đảo của f trong Rn |n ∈ N 2C
Để tính toán nghịch đảo của một đa thức trong Rn ta
có thể sử dụng thuật toán trong [9] dựa trên thuật toán
Euclid mở rộng cho các đa thức
Chú ý, trong Rn |n ∈ N 2C , 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
g = e 0n + f có trọng số Hamming chẵn Mặt khác,
theo bổ đề 6, g là nghịch đảo mở rộng Do đó, tập
E n |n ∈ N 2C sẽ bao gồm tất cả các đa thức có trọng số
Hamming chẵn và |E n | = 2 n −1 − 1 (trừ đa thức tầm
thường g = 0).
Ví dụ, trong R3, có 22 = 4 đa thức khả nghịch
{1, x, x2, 1 + x + x2} và tương ứng 22− 1 = 3 đa
thức khả nghịch mở rộng {x + x2, 1 + x2, 1 + x }, trừ
đa thức 0
IV HỆ MẬTE-RISKE Trong phần III, ta thấy rằng tất cả các đa thức trong
R 2Cđều khả nghịch và khả nghịch mở rộng Bằng cách
khai thác đặc tính này, trong phần này chúng tôi đề xuất
một sơ đồ mật mã hóa khóa bí mật xác suất mới, được
gọi là E-RISKE (Extended Random Invertible
Secret-Key Encryption scheme), Sơ đồ này sẽ được chứng minh
an toàn với tấn công IND-CPA (hay gọi là
IND-CPA-secure) Các cấu trúc đại số nền tảng của E-RISKE được
tóm tắt trong bảng I
A Tạo khóa
Bên gửi và bên nhận chọn và chia sẻ một đa thức ngẫu
nhiên k ∈ K làm khóa bí mật chung Vì deg(k) ≤ N −1
nên ta có thể biểu diễn k bằng N bit Với điều kiện bậc
của k deg(k) > 0 để đảm bảo rằng ta không sử dụng
hai đa thức tầm thường k = 0 và k = 1 làm khóa bí
mật trong E-RISKE, Do đó,
|K1| = |K2| = 2 N−1 − 1 (1)
và
|K| = |K1| + |K2| = 2 N − 2 (2)
Bảng I
C ẤU TRÚC ĐẠI SỐ NỀN TẢNG CỦA E-RISKE Tham số Giá trị
Vành đa thức R L = Z2[x]/(x L+ 1)|L ∈ R 2C
Không gian bản
rõ P = {m ∈ R L , deg(m) < L − 1}
Không gian bản
Chiều dài bản rõ, bản mã L − 1, L Kích thước khóa N < L
Không gian khóa con 1 K1 ={k ∈ I L2 |0 < deg(k) ≤ N − 1}
Không gian khóa con 2 K2 ={k ∈ E L |0 < deg(k) ≤ N − 1}
Không gian khóa K = K1∪ K2
B Mã hóa
Để mã hóa (L − 1) bit bản rõ m, đầu tiên bên gửi tính L bit
M = ((w(m) + 1) mod 2).x L −1 + m (3)
và xuất ra L bit bản mã
Chú ý rằng w(M) luôn lẻ do đó cả M và c đều khả nghịch trong RL Bên cạch đó, theo bổ đề 1, nếu k ∈ K1
thì w(c) là lẻ, do đó c là khả nghịch còn khi k ∈ K2
thì w(c) chẵn và c là khả nghịch mở rộng trong RL.
C Giải mã
Để giải mã L bit bản mã c, đầu tiên bên nhận tính L bit M như sau Nếu k ∈ K1 thì
nếu không (k ∈ K2)
và sau đó khôi phục (L − 1) bit bản rõ
Ở đây ML−1 là hệ số của đơn thức x L −1 trong biểu
diễn đa thức của M Chú ý rằng k −1 là nghịch đảo của
k khi k ∈ K1 và k −1
e là nghịch đảo mở rộng của k khi
k ∈ K2
Trang 6
Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)
D Một ví dụ nhỏ
Trong ví dụ này, ta chọn L = 5, N = 3 và sử dụng R5
để xây dựng E-RISKE Giả sử rằng bên gửi muốn gửi
4 bit bản tin 0011 tương đương với đa thức m = x + 1
tới bên nhận
1) Khi k ∈ K1: Giả sử rằng bên gửi và bên nhận đều
dùng khóa bí mật chung là k = x2+x+1với nghịch đảo
là k −1 = x4+ x2+ x Để mã hóa m, đầu tiên bên gửi
tính M = x4+x+1 sau đó tính c = M ∗k = x4+x3+x
và gửi c tới bên nhận.
Khi nhận được c, bên nhận đầu tiên sử dụng k −1 để
tính M = c ∗ k −1 = x4 + x + 1 sau đó khôi phục
m = x4+ (x4+ x + 1) = x + 1.
2) Khi k ∈ K2: Giả sử rằng bên gửi và bên nhận đều
dùng khóa bí mật chung là một đa thức khả nghịch mở
rộng
k = e05+ (x2+ x + 1) = x4+ x3
với nghịch đảo mở rộng
k −1 e = e05+ (x4+ x2+ x) = x3+ 1.
Để mã hoá m, đầu tiên bên gửi tính M = x4+ x + 1
sau đó tính
c = e05+ M ∗ k = x2+ 1
và gửi c tới bên nhận.
Khi nhận được c, đầu tiên bên nhận sử dụng k −1
e để tính
M = e05+ c ∗ k −1 e
= e05+ (x2+ 1)∗ (x3+ 1) = x4+ x + 1
sau đó khôi phục m = x4+ (x4+ x + 1) = x + 1.
E Phân tích độ an toàn trên lý thuyết của E-RISKE
1) Khả năng chống tấn công IND-EAV-ATK:
Định lý 2 E-RISKE an toàn với tấn công
IND-EAV-ATK.
Chứng minh: Nhớ lại rằng, với bản mã c bên nhận
có thể tìm được bản rõ M bằng công thức (5) hoặc (6)
nếu biết k Mặc dù không có khoá, kẻ nghe lén có thể
thử lần lượt các khoá k trong không gian khoá và giải
mã ra được một bản rõ M � ∈ P Xác suất để kẻ nghe
lén giải mã thành công sẽ là
Pr[M � = M ] = Pr[k −1 ∗ c = M] Pr[k ∈ K1]
+ Pr[e 0L + k −1 e ∗ c = M] Pr[k ∈ K2]
= Pr[k −1 = M ∗ c −1 ] |K1|
|K| . + Pr[k −1 e = e 0L + (M + e 0L)∗ c −1 e ] |K2|
|K|
với c −1 và c −1
e là lần lượt là nghịch đảo và nghịch đảo
mở rộng của c trong RL Lưu ý rằng, trong RL, c luôn
là khả nghịch hoặc khả nghịch mở rộng
Vì k được lựa chọn ngẫu nhiên phân bố đều trong K1
hoặc K2 trong khi M và c là cho trước Như một hệ
quả,
Pr[k −1 = M ∗ c −1] = 1
|K1|
và
Pr[k −1 = e 0L + (M + e 0L)∗ c −1
e ] = 1
|K2|
Cuối cùng, ta có
Pr[M � = M ] = |K1|
|K| .
1
|K1| +
|K2|
|K| .
1
|K2| =
2
|K| . Trong tấn công IND-EAV-ATK, kẻ tấn công A có thể đạt được b � = b bằng cách đoán đơn giản với xác
suất đúng là 1/2 hoặc thử tất cả các khoá k ∈ K1 hoặc
k ∈ K2 và tính M � bằng thủ tục giải mã cho đến khi
M � = Mb Giả sử A mất p(N) lần thử k để thu được
M � = Mb, với p(N) là một đa thức của N, ta có
Pr[SecKeav A,Π = 1] = 1
2+ p(N ) Pr[M
� = Mb]
=1
2 + p(N ).(Pr[M
� = M0] Pr[b = 0] + Pr[M � = M1] Pr[b = 1])
=1
2 + p(N ).(
1
2.
2
|K|+
1
2.
2
|K|)
=1
2 + p(N ).
2
|K| =
1
2+
p(N )
2N −1 − 1
Vì p(N) là một đa thức (để đảm bảo tấn công là khả
thi trong thời gian đa thức), theo định lý 2,
p(N )
2N−1 − 1
là một hàm không đáng kể của N Kết quả là, theo định
nghĩa 5, E-RISKE được coi là an toàn với tấn công IND-EAV-ATK
2) Khả năng chống tấn công IND-CPA-ATK:
Định lý 3 E-RISKE an toàn với tấn công
IND-CPA-ATK.
Chứng minh: Với một bản rõ M và bản mã tương ứng c cho trước và nếu ta có c � là bản mã của M với
Trang 7
một khóa k nào đó thì
Pr[c � = c] = Pr[k −1 ∗ M = c] Pr[k ∈ K1]
+ Pr[e 0L + k −1 e ∗ M = c] Pr[k ∈ K2]
= Pr[k −1 = M −1 ∗ c] |K1|
|K|
+ Pr[k e −1 = e 0L + M −1 ∗ (c + e 0L )] |K2|
|K|
với M −1 là nghịch đảo của M trong RL Nhắc lại
rằng, theo công thức (3), w(M) luôn lẻ nên M luôn
khả nghịch trong RL Vì k được lựa chọn ngẫu nhiên
phân bố đều trong K trong khi M và c cố định nên ta
có
Pr[k −1 = M −1 ∗ c] = 1
|K1|
và
Pr[k −1 e = e 0L + M −1 ∗ (c + e 0L)] = 1
|K2| .
Hệ quả là,
Pr[c � = c] = 1
|K1| .
|K1|
|K| +
1
|K2| .
|K2|
|K| =
2
|K| . Trong tấn công IND-CPA-ATK, kẻ tấn công A có thể
đạt được b � = b bằng một trong hai cách sau:
1) Sử dụng thuật toán để tìm b như trong tấn công
IND-EAV-ATK;
2) Với c là bản mã của một trong hai bản rõ m0, m1
nhận được từ bộ mã hoá Kẻ tấn công lựa chọn
ngẫu nhiên b ∈ {0, 1} và truy vấn bộ mã hóa q(N)
lần với đầu vào mb cho đến khi có được bản rõ
đầu ra c � = c Lưu ý rằng q(N) là một đa thức
của N, ràng buộc này đảm bảo tấn công có thể
được thực hiện trong thời gian đa thức
Khi đó ta có
Pr[SecKcpa A,Π= 1]
= Pr[SecKeav A,Π = 1] + q(N ) Pr[c � = c]
= Pr[SecKeav A,Π = 1] + q(N ). 2
|K|
= 1
2 + (p(N ) + q(N )).
2
|K|
= 1
2 +
p(N ) + q(N )
2N −1 − 1
Vì g(N) = p(N) + q(N) cũng là một đa thức, theo
định đề 2,
g(N )
2N−1 − 1
là hàm không đáng kể của N Kết quả là, theo định
nghĩa 5, E-RISKE là IND-CPA
F Phân tích hiệu năng trên lý thuyết
Lợi thế quan trọng nhất của E-RISKE là tốc độ tính toán, thuật toán mã hóa và giải mã của E-RISKE chỉ là
một phép cộng và một phép nhân đa thức trong RL và
mất O(L2)phép tính bit Dễ thấy L càng lớn so với N
thì E-RISKE có hiệu quả mã hoá càng cao
Nhược điểm của E-RISKE là ta phải chọn k ∈ K
ngẫu nhiên và thống nhất giữa hai phía, mỗi phiên làm việc cần một khóa bí mật ngẫu nhiên mới được chia
sẻ giữa bên gửi và bên nhận Vì lý do này, E-RISKE cầ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 (Key Encapsulation Mechanism) với bản rõ
có kích thước lớn được mã hóa bởi E-RISKE còn khóa
bí mật ngẫu nhiên k trong mỗi một phiên của E-RISKE
được mã hóa bởi hệ mật khóa công khai đó Nếu chọn được hệ mật khoá công khai có đặc tính IND-CPA thì, theo [1], sơ đồ lai ghép được cấu thành vẫn kế thừa được đặc tính IND-CPA của E-RISKE Không những thế, do hiệu quả mã hoá cao, nếu sử dụng sơ đồ lai ghép ta
có E-RISKE để cải thiện hiệu quả của các hệ mật khoá công khai có hệ số mở rộng bản tin lớn như NTRU và pNE (khoảng hơn 4 lần)
G Lựa chọn tham số
Mặc dù xác suất để kẻ tấn công có thể phá được E-RIKSE về lý thuyết là vô cùng nhỏ nhưng thực tế
để đảm bảo khả năng chống các tấn công vét cạn thì
giá trị của N phải đủ lớn Đối với ứng dụng thực tế, nhóm nghiên cứu đề xuất L ≥ N ≥ 1024 Trong trường
hợp đó, độ mật khoá (key-security) và độ mật bản tin (message-security) của E-RISKE là 2N
− 2 = 21024
− 2.
Đối với các ứng dụng yêu cầu độ mật cao hơn, chúng
tôi khuyến nghị L ≥ N ≥ 4096.
V KẾT LUẬN
Như đã đề cập, mặc dù E-RISKE có hiệu quả tính toán cao tuy nhiên do phải sử dụng khoá phiên, việc lựa chọn một hệ mật khoá công khai phù hợp để mã hoá và chia sẻ khoá bí mật ngẫu nhiên của E-RISKE theo mô hình KEM như nêu trên là một vấn đề mở thú
vị Ngoài ra, do E-RISKE hoạt động dựa trên các phần
tử khả nghịch và khả nghịch mở rộng, tìm kiếm các lớp
vành Rn có hệ số Kn lớn (tối đa hoặc gần tối đa) là một vấn đề mở khác cho các nghiên cứu trong tương lai của chúng tôi
TÀI LIỆU THAM KHẢO [1] Jonathan Katz, Yehuda Lindell (2007), Introduction to Modern Cryptography: Principles and Protocols, Chapman Hall/CRC Cryptography and Network Security Series.
Trang 8
Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)
[2] Jeffrey Hoffstein, Jill Pipher, Joseph H Silverman NTRU: Alice
ring-based public key cryptosystem Lecture Notes in Computer
Science Volume 1423, pp 267-288, Springer Verlag 1998.
[3] Gaborit, P., Ohler, J., Sole, P.: CTRU, a Polynomial Analogue of
NTRU, INRIA Rapport de recherche, N.4621 (November 2002),
(ISSN 0249-6399).
[4] Dang Hoai Bac, Nguyen Binh, Nguyen Xuan Quynh , Young
Hoon Kim (2007) Polynomial rings with two cyclotomic cosets
and their applications in Communication, MMU International
Symposium on Information and Communications Technologies
2007, Malaysia, ISBN: 983-43160-0-3.
[5] Nguyen Binh, Le Dinh Thich (2002), The order of polynomials
and algorithms for defining Oder of Polynomial over polynomial
rings, VICA-5, Hanoi, Vietnam.
[6] Stehle,D., Steinfeld,R.:Making NTRU as secure as worst-case problems over ideal lattices In:Paterson,K.G.(ed.) EUROCRYPT
2011 LNCS, vol 6632, pp 27–47 Springer, Heidelberg (2011) [7] Nguyen Binh Crypto-system based on cyclic geometric progres-sions over polynomial ring (Part I) REV’02.2002.
[8] Ho Quang Buu, Ngo Duc Thien, Tran Duc Su Constructing secret-cryptosystem based on cyclic multiplicative progress over polynomial rings, Journal of Science and Technology, Posts and Telecommunication Institute of Technology, 50 (2A), 2012, pp 109-119 In Vietnamese.
[9] Menezes A J, Van Oorchot P C (1998), Handbook of Applied Cryptography, CRC Press.