Hệ mật khóa công khai dựa trên tính khó của việc giải đồng thời 2 bài toán phân tích số và logarit rời rạc/khai căn

Hội thảo lần thứ III: Một số vấn đề chọn lọc về an toàn an ninh thông tin – Đà Nẵng, 07/12/2018  
Hệ mật khóa công khai dựa trên tính khó của việc giải đồng thời  
2 bài toán phân tích số và logarit rời rạc/khai căn  
A Public – Key Cryptosystem Based on Difficulty of Simultaneous Solving  
Two Factorization and Discrete Logarithm/Root Problems  
Lưu Hồng Dũng  
Nguyễn Vĩnh Thái  
Khoa CNTT  
Học Viện KTQS  
Viện CNTT  
Viện KH và CN QS  
Hà Nội, Việt Nam  
Hà Nội, Việt Nam  
e-mail: nguyenvinhthai@gmail.com  
Abstract— Bài báo đề xuất một hệ mật khóa công khai  
xây dựng dựa trên tính khó của việc giải đồng thời 2  
bài toán phân tích một số nguyên lớn ra các thừa số  
nguyên tố với bài toán logarit rời rạc trên Zp hoặc  
bài toán khai căn trên Zn. Vì thế, các thuật toán mật  
mã và chữ ký của hệ mật mới đề xuất có thể đáp  
ứng được các yêu cầu về độ an toàn cao của các ứng  
dụng trong thực tế.  
khai căn trên Zn). Hệ mật được đề xuất ở đây bao  
gồm thuật toán mật mã khóa công khai, thuật toán  
chữ ký số, thuật toán mã hóa – xác thực và 1 giao  
thức trao đổi khóa cho các hệ mật khóa đối xứng,  
các thuật toán của hệ mật này được thiết kế để các  
thực thể cuối (người sử dụng) trong cùng một hệ  
thống có thể sử dụng chung một bộ tham số (tham  
số miền) do nhà cung cấp dịch vụ chứng thực số tạo  
ra.  
Keywords: Digital Signature Algorithm, Public – Key  
Cryptography Algorithm, Key Exchange Protocol, Public  
II. XÂY DỰNG HỆ MẬT KHÓA CÔNG KHAI  
DỰA TRÊN 2 BÀI TOÁN KHÓ  
– Key CryptoSystem, Discrete Logarithm Problem,  
Integer Factoring Problem.  
A. Một số bài toán khó ứng dụng trong mật mã  
1) Bài toán phân tích số  
I.  
ĐẶT VẤN ĐỀ  
Nâng cao độ an toàn cho các thuật toán mật mã  
khóa công khai và chữ ký số dựa trên tính khó của  
việc giải đồng thời 2 bài toán khó là một hướng tiếp  
cận đang nhận được nhiều sự quan tâm của các nhà  
nghiên cứu [1–8]. Trong [9–22] nhóm tác giả đã đề  
xuất một số thuật toán mật mã khóa công khai và  
chữ ký số xây dựng trên bài toán phân tích số, khai  
căn và logarit rời rạc. Trong bài báo này, cũng với  
mục đích nâng cao độ an toàn cho thuật toán trước  
một số dạng tấn công trong thực tế, nhóm tác giả  
tiếp tục đề xuất một hệ mật khóa công khai được  
phát triển từ các kết quả trước đó [9–19] dựa trên  
tính khó của việc giải đồng thời 2 bài toán phân tích  
một số nguyên lớn ra các thừa số nguyên tố (bài  
toán phân tích số) với bài toán logarit rời rạc trên Zp  
, với p là 1 số nguyên tố (bài toán logarit rời rạc trên  
Zp) hoặc bài toán khai căn trên vành Zn, ở đây:  
Bài toán phân tích số được phát biểu như sau:  
Cho số  
, hãy tìm biểu diễn:  
n∈ N  
n = p1e1 .p2e2 ...piei ...pkek  
pi  
, với:  
và là các số  
ei ≥1  
nguyên tố.  
Một trường hợp riêng của bài toán phân tích số  
được ứng dụng để xây dựng hệ mật RSA [23] mà ở  
đó n là tích của hai số nguyên tố p và q. Khi đó, bài  
toán phân tích số hay còn gọi là bài toán phân tích  
số hay còn gọi là bài toán IFP(n) được phát biểu như  
sau:  
Bài toán IFP(n): Với mỗi số nguyên dương n,  
hãy tìm số nguyên tố p hoặc q thỏa mãn phương  
trình sau:  
p × q = n  
Giải thuật cho bài toán IFP(n) có thể được viết  
như một thuật toán tính hàm IFP(.) với biến đầu vào  
, với p và q là 2 số nguyên tố (bài toán  
n = p × q  
1
Hội thảo lần thứ III: Một số vấn đề chọn lọc về an toàn an ninh thông tin – Đà Nẵng, 07/12/2018  
gx mod p = y  
là n, còn giá trị hàm là p hoặc q của phương trình  
sau: hoặc:  
(
p = IFP n  
)
q = IFP n  
( )  
Giải thuật cho bài toán DLP(p,g) có thể được viết  
như một thuật toán tính hàm DLP(p,g)(.) với biến đầu  
vào là y, còn giá trị hàm là x của phương trình sau:  
Trong hệ mật RSA, bài toán phân tích số được  
sử dụng trong việc hình thành cặp khóa công khai/bí  
mật cho mỗi thực thể ký. Với việc giữ bí mật các  
tham số (p, q) thì việc tính được khóa bí mật (d) từ  
khóa công khai (e) và modulo n là một bài toán khó  
nếu p, q được chọn đủ lớn và mạnh. Hiện tại bài  
toán trên vẫn được coi là bài toán khó do chưa có  
giải thuật thời gian đa thức hay đa thức xác suất cho  
nó và hệ mật RSA là một minh chứng thực tế cho  
tính khó giải của bài toán này. Trong thực tế, các  
tham số p, q có thể chọn theo FIPS 186 – 4 [24] của  
Hoa Kỳ cho hệ mật RSA.  
x = DLPp,g (y)  
)
(
Bài toán DLP(p,g) là cơ sở để xây dựng nên hệ  
mật ElGamal [25]. Hiện tại chưa có giải thuật hiệu  
quả (thời gian đa thức hay đa thức xác suất) cho  
DLP(p,g) và độ an toàn của thuật toán DSA trong  
chuẩn chữ ký số DSS của Hoa Kỳ [23] là một minh  
chứng thực tế cho tính khó giải của bài toán này.  
B. Xây dựng hệ mật khóa công khai dựa trên tính  
khó của việc giải 2 bài toán phân tích số và  
logarit rời rạc/khai căn  
2) Bài toán khai căn trên Zn  
Cho cặp số nguyên dương (n,e) với n là tích 2  
số nguyên tố p và q sao cho bài toán phân tích số là  
khó giải trên Zn, còn e là một giá trị thỏa mãn:  
1) Thuật toán hình thành tham số và khóa  
Các tham số hệ thống hay tham số miền được  
nhà cung cấp dịch vụ chứng thực số hình thành  
bằng thuật toán như sau:  
và:  
,
ở
đây:  
gcd(e,ϕ(n)) =1  
1< e < ϕ(n)  
. Khi đó, bài toán khai căn trên  
ϕ
(n) = ( p −1).(q −1)  
Zn hay còn gọi là RSAP(n,e) được phát biểu như sau:  
Thuật toán 1.1: Hình thành tham số hệ thống.  
Bài toán RSAP(n,e): Với mỗi số nguyên dương  
y ∈ Zn∗ , hãy tìm x thỏa mãn phương trình sau:  
Input: lp, lq – độ dài (tính theo bit) của các  
số nguyên tố p, q.  
Output: p, q, g.  
xe mod n = y  
[1]. Chọn 1 cặp số p, q nguyên tố với:  
len(p) = lp, len(q)= lq sao cho: q|(p – 1).  
Giải thuật cho bài toán RSAP(n,e) có thể được  
viết như một thuật toán tính hàm RSAP(n,e)(.) với  
biến đầu vào là y, còn giá trị hàm là x của phương  
trình sau:  
*
[2]. Chọn g là phần tử sinh của nhóm Zp  
theo:  
x = RSAP  
(y)  
(n,e)  
p−1  
q
, với:  
mod p  
.
∈(1, p)  
g =  
Chú thích:  
α
α
Bài toán RSAP(n,e) cũng là một cơ sở quan trọng  
để xây dựng nên hệ mật RSA. Ở hệ mật RSA nếu  
giải được RSAP(n,e), kẻ thám mã có thể tìm được bản  
rõ (M) từ bản mã (C) và các tham số công khai (n,e),  
hoặc dễ dàng tạo được chữ ký giả mạo (S) cho một  
bản tin bất kỳ (M) mà không cần biết khóa bí mật (d)  
của đối tượng ký (bị mạo danh). Tuy nhiên, hiện tại  
vẫn chưa có giải thuật thời gian đa thức cho bài toán  
này và do đó việc tấn công hệ mật RSA bằng việc  
giải RSAP(n,e) là vẫn chưa khả thi.  
+ len(.): hàm tính độ dài (theo bit) của một  
số.  
Mỗi thực thể cuối/người sử dụng trong hệ thống  
hình thành khóa của mình bằng thuật toán như sau:  
Thuật toán 1.2: Hình thành khóa.  
Input: p, q , g, lp1 và lq1 - độ dài (tính theo  
bit) của số các nguyên tố p1 và q1.  
3) Bài toán logarit rời rạc trên Zp  
Cho cặp số nguyên dương (p,g) với p là số  
*
Output: x1, x2, φ(n), y.  
nguyên tố, còn g là một phần tử của nhóm Zp . Khi  
đó, bài toán logarit rời rạc trên Zp hay còn gọi là bài  
toán DLP(p,g) được phát biểu như sau:  
[1]. Chọn 1 cặp số p1, q1 là các số nguyên tố  
với: len(p1) = lp1, len(q1)= lq1  
Bài toán DLP(p,g): Với mỗi số nguyên dương  
y ∈ Z∗p , hãy tìm x thỏa mãn phương trình sau:  
[2]. Tính: n = p1. q1 , nếu: n ≤ p thì thực hiện  
lại từ bước [1].  
2
H
ộ
i thả  
o l  
ần th  
ứ
III: M  
ột s  
ố
vấ  
n
đề chọn lọ  
c về  
an toàn an ninh thông tin – Đà Nẵng, 07/12/2018  
[3]. Tính: φ(n) = (p1 – 1).( q1 – 1)  
[1]. Người nh  
ậ
n s  
ử
d
ụ
ng khóa bí m  
ậ
t th  
ứ
hai  
để tính  
R
theo:  
[4]. Chọn khóa bí mật thứ nhất x1 trong khoảng  
(1, q).  
x2 B  
(2.4)  
t th  
n tin nhận  
R =  
(
R
)
mod nB  
[5]. Tính khóa công khai theo:  
[2]. Người nh  
ậ
n s  
ử
d
ụ
ng khóa bí m  
ậ
ứ
nh  
được:  
m = C ×  
[3]. Chuy n giá tr  
ấ
t c  
ủ
a mình để gi  
ả
i mã b  
ả
y = g− x mod p  
1
(1.1)  
x1B  
)
Kiểm  
gcd(y, (n)) ≠1  
[6]. Tính khóa bí mật thứ hai theo:  
x2 = y−1 mod  
(n)  
tra  
nếu:  
hoặc:  
y ≥  
ϕ
(n)  
(2.5)  
(
R  
modnB  
thì thực hiện lại từ bước [4].  
ể
ị
m thành b  
ả
n tin M.  
ϕ
b) Tính  
đ
úng đắn c  
ủ
a thu  
ật toán  
(1.2)  
ϕ
Đ
i
ề
u c  
ầ
n ch  
ứ
ng minh ở đây là: Cho p, q, p1, q1  
là các s  
ố
nguyên t  
ố
th  
ỏ
a mãn:  
,
q | (p −1)  
0,1 ∗  
, với:  
{ }
 
→ Zh  
[7]. Chọn hash function H:  
g =α ( p−1) / q mod p  
n = p1 × q1  
,
n > p  
,
,
,
,
,
1<  
α
< p  
1B  
,
,
|
q
|≤|  
h
|< p  
1< x1B < q yB = g− x mod p x2B  
=
(
yB  
)
−1 mod  
yB  
k mod p  
ϕ(nB )  
.
,
,
C = M ×  
1 < k < q  
0 ≤ M ≤ p −1  
yB  
(
)
2) Thuật toán mật mã khóa công khai  
g k mod p  
)
mod nB  
.
R =  
(
Thuật toán mật mã được đề xuất ở đây bao gồm  
thuật toán mã hóa (Thuật toán 2.1) và giải mã  
(Thuật toán 2.2), với các tham số hệ thống được  
hình thành theo Thuật toán 1.1 và khóa hình thành  
theo Thuật toán 1.2. Giả thiết người gửi/mã hóa là  
A, người nhận/giải mã là B và B có cặp khóa bí  
x1B  
)
x2 B  
)
N
ế
u:  
,
mod nB  
,
M = C ×  
(
R
mod p  
R =  
(
R
thì:  
.
M = M  
Ch ng minh:  
Th t v y, t (2.3) và (2.4) ta có  
ứ
ậ
ậ
ừ
:
mật/công khai tương ứng là  
, trong đó:  
(x1B , x2B , yB )  
x1B  
(
R  
)
mod p =  
được chọn ngẫu nhiên trong khoảng  
, còn  
)
x1B  
(
1,q  
x1B  
x2B  
yB  
=
(
(
(
R
)
mod nB  
)
mod nB  
)
mod p  
được tính theo (1.1) và (1.2) như sau:  
(x2B , yB )  
(2.6)  
x  
1B  
x2B  
yB  
=
(
(
gk mod p  
)
mod nB  
)
mod n  
mod p  
−x1B  
)
B   
yB =  
(
g
mod p, x2B =
(
yB
)
ϕ(nB )  
−1 mod  
(2.1)  
x1B  
yB .x2 B  
=
=
(
(
(
gk mod p  
)
mod nB  
)
mod p  
a) Thuật toán mã hóa và giải mã  
x1B  
gk mod p  
)
mod p  
Thuật toán 2.1: Thuật toán mã hóa.  
Input: p, q , g, nB , yB, M.  
Output: C,R.  
= gk.x mod p  
1B  
Nên từ (2.1), (2.2), (2.5) và (2.6) ta có điều cần  
chứng minh:  
x1B  
M = C ×  
(
R
)
mod p  
[1]. Biểu diễn bản tin cần mã hóa M thành  
một giá trị m tương ứng trong khoảng  
[0, p – 1], chọn ngẫu nhiên một giá trị k  
trong khoảng (1,q) rồi tính thành phần  
thứ nhất của bản mã:  
k
= M ×  
(
g−x mod p  
)
×
(
gk.x mod p  
mod p  
)
1B  
1B  
= M × g−k.x × g x mod p = M  
1B  
1B  
c) Mức độ an toàn của thuật toán  
+ Tấn công khóa bí mật  
C = m ×  
yB  
( )  
k mod p  
n th 2 c  
(2.2)  
[2]. Tính thành ph  
ầ
ứ
ủ
a b  
mod n B  
ản mã (C,R) cho B.  
ả
n mã:  
(2.3)  
yB  
k
Ở thuật toán mới đề xuất, khóa bí mật là cặp  
(x1,x2), tính an toàn của lược đồ sẽ bị phá vỡ khi cặp  
khóa này có thể tính được bởi một hay các đối  
tượng không mong muốn. Từ Thuật toán 1.2 cho  
thấy, để tìm được x2 cần phải tính được tham số  
φ(n), nghĩa là phải giải được IFP(n), còn để tính  
được x1 cần phải giải được DLP(p,g). Như vậy, để  
tìm được cặp khóa bí mật này kẻ tấn công cần phải  
R =  
i b  
(
(
g
)
mod p  
)
[3]. G  
ử
Thuật toán 2.2: Thuật toán giải mã.  
Input: p, q , g, x1B , x2B, nB , yB, (C,R).  
Output: M .  
3
Hội thảo lần thứ III: Một số vấn đề chọn lọc về an toàn an ninh thông tin – Đà Nẵng, 07/12/2018  
giải được bài toán IFP(n) và DLP. Nói cách khác, độ  
an toàn về khóa của thuật toán được đảm bảo bằng  
độ khó của việc giải đồng thời 2 bài toán IFP(n) và  
a) Thuật toán ký và kiểm tra chữ ký  
Thuật toán 3.1: Sinh chữ ký.  
Input: p, q, g, φ(n), x1, x2, M – bản tin cần  
DLP(p,g)  
.
ký.  
+ Tấn công thám mã bản tin  
Output: (E,S) – chữ ký.  
[1]. Chọn ngẫu nhiên giá trị k trong khoảng  
(1, q)  
Để giải mã bản tin có thể thực hiện tấn công  
vào thuật toán mã hóa hoặc giải mã như sau:  
R = gk mod p  
[2]. Tính giá trị:  
(3.2)  
[3]. Tính thành phần thứ nhất của chữ ký  
theo: (3.3)  
[4]. Tính thành phần thứ 2 của chữ ký theo:  
(3.4)  
- Tấn công thuật toán mã hóa  
Từ (2.2) có thể giải mã bản tin nếu tính được k  
như sau:  
E = H(M || R)modq  
m = C.  
(
yB  
)
−k mod p  
S = x2 ×((k + x1 × E  
Chú thích:  
modq modφ(n)  
) )  
Để tính được k từ (2.3) đầu tiên cần phải giải  
được bài toán khai căn RSAP(n,e) để tìm:  
+ Toán tử “||” là phép nối 2 xâu bit.  
hoặc giải bài toán phân tích số để  
(R)  
)
X = RSAP  
(nB ,yB  
x2B  
tìm  
rồi tìm X:  
. Sau đó phải  
mod nB  
Thuật toán 3.2: Kiểm tra chữ ký.  
X =  
(
R
)
x2B  
Input: p, q, g, y, n, M – bản tin cần thẩm tra.  
Output: (E,S) = true/false.  
[1]. Tính giá trị:  
giải tiếp bài toán logarit rời rạc DLP(p,g) để tìm:  
.
k = DLPp,g (X )  
)
(
R =  
(
(  
gS  
)
y modn ×  
(
y
)
mod p  
)
E
Như vậy, để giải mã bản tin bằng cách tấn công  
trực tiếp vào thuật toán mã hóa, kẻ tấn công cần  
phải giải được đồng thời hai bài toán RSAP(n,e) và  
DLP(p,g) đã chỉ ra ở trên. Như vậy, độ an toàn của  
thuật toán trước dạng tấn công này được quyết định  
bằng độ khó của việc giải đồng thời 2 bài toán: bài  
toán khai căn trên Zn và bài toán logarit rời rạc trên  
Zp, hoặc: bài toán phân tích số và bài toán logarit rời  
rạc trên Zp.  
(3.5)  
[2]. Tính giá trị:  
E = H(M || R)modq  
[3]. Nếu: thì: (E,S) = true, ngược lại:  
(3.6)  
E = E  
(E,S) = false  
Chú thích:  
+ (E,S) = true: chữ ký hợp lệ, bản tin M được  
xác thực về nguồn gốc và tính toàn vẹn.  
+ (E,S) = false: chữ ký hoặc/và bản tin bị giả  
mạo.  
- Tấn công thuật toán giải mã  
b) Tính đúng đắn của thuật toán  
Để giải mã bản tin bằng cách tấn công vào thuật  
toán giải mã, kẻ tấn công cần phải tính được các  
khóa bí mật của người nhận B, nghĩa là phải giải  
được đồng thời hai bài toán IFP(n) và DLP(p,g). Như  
vậy, độ an toàn của thuật toán trước dạng tấn công  
này được quyết định bằng độ khó của việc giải đồng  
thời 2 bài toán phân tích số và bài toán logarit rời  
rạc trên Zp.  
Điều cần chứng minh ở đây là: Cho p, q, p1, q1  
n = p × q  
là các số nguyên tố thỏa mãn:  
,
,
,
,
q | (p −1)  
1
1
g =α ( p−1) / q mod p  
n > p  
,
,
,
1< x1 < q  
,
1 < k < q  
1<  
α
< p  
y = g− x mod p  
x2 =  
(
y
)
−1 mod  
a Zh với:  
ϕ(n)  
1
,
,
H :  
{
0,1 ∗  
}
,
.
R = gk mod p  
| q |≤| h |<| p |  
,
mod q modφ(n)  
E = H(M || S)modq S = x2 × ((k + x1 × E) )  
3) Thuật toán chữ ký số  
E
)
Nếu:  
,
R =  
(
(
.
gS  
)
y modn ×  
(
y
)
mod p E = H(M || R)modq  
Thuật toán chữ ký số được đề xuất ở đây bao  
gồm thuật toán ký (Thuật toán 3.1) và kiểm tra  
(Thuật toán 3.2), với các tham số hệ thống được  
hình thành theo Thuật toán 1.1 và khóa hình thành  
theo Thuật toán 1.2. Giả thiết người ký ở đây có  
cặp khóa khóa bí mật/công khai tương ứng là  
thì:  
E = E  
Chứng minh:  
Thật vậy, từ (3.1), (3.2), (3.4) và (3.5) ta có:  
R =  
(
.(k+x1.E  
2
(
g S  
)
y mod n ×  
(
y
y
)
mod p  
E
)
(3.7)  
E
=
=
(
(
g x  
) mod n  
. y mod n  
)
×
(
g−x mod p  
)
mod p  
1
, trong đó: được chọn ngẫu nhiên trong  
(x1, x2 , y)  
x1  
g(  
)
× g−x .E mod p  
k+x1.E ).x2  
1
khoảng  
,
còn  
được tính theo (1.1) và  
(1,q  
)
(x2 , y)  
= gk+x E × g−x E mod p = gk mod p = R  
1
1
(1.2) như sau:  
Từ (3.3), (3.6) và (3.7) suy ra điều cần chứng  
minh:  
−x1  
y =  
(
g
)
mod p  
(3.1)  
x2 =  
(
y
)
−1 mod  
ϕ
(n)  
E = H (M || R)mod q = H (M || R)mod q = E  
4
Hội thảo lần thứ III: Một số vấn đề chọn lọc về an toàn an ninh thông tin – Đà Nẵng, 07/12/2018  
c) Mức độ an toàn của thuật toán  
+ Tấn công khóa bí mật  
Ở thuật toán chữ ký mới đề xuất, khóa bí mật  
của một đối tượng ký ngoài cặp (x1,x2) tương tự như  
ở thuật toán mật mã (mục 2), còn bao gồm tham số  
φ(n). Như vậy, độ an toàn về khóa của thuật toán  
được đảm bảo bằng độ khó của việc giải đồng thời 2  
[3]. Tính thành phần thứ 2 của bản mã:  
E = H(M || R)modq  
(4.4)  
(4.5)  
[4]. Tính thành phần thứ 3 của bản mã:  
S = x2A × modq modφ(nA )  
((
k + x1A × E
) )  
[5]. Gửi bản mã (C,E,S) cho B.  
bài toán IFP(n) và DLP(p,g)  
+ Tấn công giả mạo chữ ký  
.
Thuật toán 4.2: Thuật toán giải mã.  
Từ điều kiện của Thuật toán 3.2, một cặp (E,S)  
bất kỳ sẽ được coi là chữ ký hợp lệ của đối tượng sở  
hữu các tham số công khai (n,y) lên bản tin M nếu  
thỏa mãn:  
Input: p,q,g,x1B,x2B,nA,yA,nB,yB,(C,E,S).  
Output: M, (E,S) = true/false.  
[1]. Người nhận sử dụng khóa bí mật thứ hai  
y modn×  
(
y
)
)
mod p
)
)  
x2B  
)
E
(3.8)  
E = H  
(
M ||
(
(  
(
gS  
)
để tính  
C
theo:  
(4.6)  
C =  
(
C
modnB  
Từ (3.8) dễ thấy rằng, nếu H(.) được chọn là  
hàm băm có tính kháng va chạm cao (SHA  
256/512,...) thì việc tạo ngẫu nhiên được cặp (E,S)  
thỏa mãn điều kiện của thuật toán kiểm tra là không  
khả thi trong các ứng dụng thực tế.  
[2]. Tính giá tr  
ị:  
yA  
E
gS  
)
modnA ×  
(
yA  
)
mod p  
)
(4.7)  
R =  
(
(
[3]. Người nh  
nh t c a mình để gi  
được:  
ậ
n s  
ử
d
ụ
ng khóa bí m  
ật thứ  
4) Thuật toán mã hóa – xác thực  
ấ
ủ
ả
i mã b n tin nh  
ả
ậ
n
x1B  
)
(4.8)  
m = C ×  
(
R
modnB  
thành b n tin  
E = H(M || R)modq  
thì: và kh  
Thuật toán mã hóa – xác thực được đề xuất ở  
đây thực hiện đồng thời chức năng bảo mật thông  
tin và xác thực nguồn gốc cũng như tính toàn vẹn  
của bản tin được mã hóa, thuật toán được đề xuất  
bao gồm thuật toán mã hóa (Thuật toán 4.1) và giải  
mã (Thuật toán 4.2), với các tham số hệ thống  
cũng được hình thành theo Thuật toán 1.1 và khóa  
hình thành theo Thuật toán 1.2. Giả thiết người  
gửi/mã hóa là A, người nhận/giải mã là B có cặp  
[4]. Chuy  
tính giá tr  
[5]. N u:  
người g  
ể
n giá tr  
ị
m
ả
M và  
ị:  
(4.9)  
ế
ằ
ng định  
E = E  
M = M  
ử
i là A.  
b) Tính  
đ
úng đắn c  
ủ
a thu  
ật toán  
Đ
i
ề
u cầ  
n ch  
ứ
ng minh ở đây là: Cho p, q, p1, q1  
khóa bí mật/công khai tương ứng là  
và  
(x1A , x2A , yA )  
là các s  
ố
nguyên t  
ố
th  
ỏa mãn:  
,
q | (p −1)  
, trong đó:  
được chọn ngẫu  
(x1A , x1B )  
(x1B , x2B , yB )  
p
−1)/ q  
g =α (  
mod p  
n = p1 × q1  
,
n > p,  
,
,
,
,
,
1<  
α < p  
nhiên trong khoảng  
,
còn  
và  
(x2A , yA ) (x2B , yB )  
(1,q  
)
yA = g−x mod p yB = g− mod p  
x1B  
1A  
,
,
1< x1A , x1B < q  
x2 A yA ϕ(nA )  
−1 mod  
được tính theo (1.1) và (1.2) như sau:  
−1 mod  
R = gk modp  
H : a Zh  
0,1 ∗  
ϕ(nB )  
,
x2B  
=
(
yB  
)
=
(
)
−x1A  
yA  
yB  
=
=
(
(
g
g
)
mod p, x2A  
mod p, x2B  
=
=
(
(
yA  
yB  
)
−1 mod  
−1 mod  
ϕ
ϕ
(nA )  
(nB )  
(4.1)  
,
,
1 < k < q  
C = M ×  
| q |≤| h |<| p |  
0 ≤ M ≤ p −1  
yB  
−x1B  
)
)
k
)
,
{
}
v
ớ
i:  
,
(
(
yB  
mod p  
)
mod nB  
a) Thuật toán mã hóa và giải mã  
,
E = H(M || R) modq  
Thuật toán 4.1: Thuật toán mã hóa.  
Input: p,q, g,x1A,x2A,nB,yB,M.  
Output: C,E,S.  
.
N
ế
u:  
,
S = x2  
×
((k + x1A × E  
)
modq  
)
gS  
modφ(nA )  
yA  
A
E
x2B  
,
C =  
(C  
)
mod nB  
R =  
(
(
)
modnA ×  
(
yA  
)
)
mod p  
x1B  
)
,
thì:  
.
E = E  
M = C ×  
(
R  
mod p E = H (M || R)mod q  
Ch  
ứ
ng minh:  
[1]. Biểu diễn bản tin cần mã hóa M thành một  
giá trị m tương ứng trong khoảng [0,p–1],  
chọn ngẫu nhiên một giá trị k trong khoảng  
(1,q) rồi tính thành phần thứ nhất của bản  
mã:  
T
ừ
(4.2) và (4..6) ta có:  
x2 B  
C =  
(C  
)
mod nB  
x2B  
yB  
(4.10)  
k
=
=
(
(
M ×  
(
yB  
)
mod p  
)
mod nB  
yB  
)
mod nB  
yB  
k
.
x2 B  
k
(4.2)  
x1B  
(
M ×  
(
g− mod p  
)
mod p  
)
mod nB  
C =  
(
m×  
(
yB  
)
mod p  
)
mod nB  
R = gk mod p  
[2]. Tính giá trị:  
(4.3)  
= M × g−  
mod p  
x1B .k  
5
H
ộ
i thả  
o l  
ần th  
ứ
III: M  
ột s  
ố
vấ  
n
đề chọn lọ  
c về  
an toàn an ninh thông tin –  
Đà N  
ẵng, 07/12/2018  
T
ừ
R =  
(4.1), (4.5) và (4.7) ta l  
ạ
i có:  
Thuật toán 5.1: Thu  
ật toán trao đổi khóa.  
yA  
E
(
(
g S  
)
mod nA ×  
(
yA  
yA  
)
mod p  
)
Input: p,q, g,x1A,x2A, x1B,x2B,nA,yA, nB,yB.  
(4.11)  
E
) mod n  
)
×
(
g −x mod p  
)
mod p  
. k+x1A .E  
(
g x  
2 A  
1A  
=
=
(
(
Output: KAB, KBA  
ước 1:  
+ A th c hi  
1 – Ch  
mãn:  
.
g(  
mod n  
× g−x mod p  
)
k+x1A .E  
)
.x2 A .yA  
1A .E  
B
= g k+x × g −x mod p = g k mod p  
1A .E  
1A .E  
ự
ệ
n:  
ọ
n ng  
ẫ
u nhiên một giá trị kA thỏa  
1< kA < q  
Từ (4.8), (4.10) và (4.11) suy ra:  
x1B  
)
, tính giá tr  
yB  
ị
RA theo công  
M = C ×  
(
R  
mod p  
x1B  
)
RA =  
i RA cho B.  
n:  
n ng  
1< kB < q  
(
gk mod p  
)
(4.12)  
= M × g−x  
×
(
gk mod p  
1B .k  
mod p  
1B .k  
A
th  
2 – G  
+ B th c hi  
1 – Ch  
mãn:  
ứ
c:  
(5.2)  
mod nB  
= M × g−x .k × g x mod p = M  
ử
1B  
ự
ệ
ọ
T
u c  
ừ
(4.3), (4.4), (4.9), (4.11) và (4.12) suy ra  
ẫ
u nhiên m  
ộ
t giá tr  
ị
kB th  
ỏ
a
đ
đ
i
ề
ầ
n ch ng minh:  
ứ
, tính giá tr  
yA  
ị
RB theo công  
E = H(M || R)modq = H(M || R)modq = E  
RB  
=
(
gk mod p  
)
mod nA  
B
th  
2 – G  
ước 2:  
+ A th c hi  
1 – Tính thành ph  
ứ
c:  
(5.3)  
c) M  
ứ
c
độ an toàn c  
t toán mã hóa – xác th  
t là s t h p gi a thu  
t toán ch ký  
o m t n i dung c  
i tính toàn v  
t cách đồng th i. Có m  
n công gi ở đây c  
t k th 3 (C) mu n m o danh A  
n tin M. Tuy nhiên, phân tích t ng  
i các thu  
độ an toàn  
ủ
a thu  
ậ
t toán  
đượ  
t toán m  
c 3, nh  
a b n tin và xác  
n c a b n tin  
ử
i RB cho A.  
B
Thu  
ậ
ự
c
c
đề xu  
ấ
t
ở
ở
ự
ện:  
ây th  
c 2 v  
p tính n  
c ngu  
ự
c ch  
ấ
ự
k
ế
ợ
ữ
ộ
ớ
ữ
ậ
ậ
t mã  
ầ
n SA theo công th  
ức:  
m
ụ
ớ
i thu  
ậ
ở
m
ụ
ằm cung  
x1A  
(5.4)  
(5.5)  
(5.6)  
SA = yB  
( )  
mod p  
c
ấ
ă
ng b  
ả
ậ
ủ
ả
th  
ự
ồ
n g  
c hi  
u ý là d  
u theo ngh  
i cho B b  
ng t n công c  
toán c 2 và 3 trên  
a thu  
đồng th  
IFP(n) và RSAP(n,e)  
ố
c cùng v  
n m  
ng t  
a m  
ẹ
ủ
ả
2 – Tính khóa bí mật chia sẻ với B theo:  
kA  
x2 A  
được th  
n l  
ự
ệ
ộ
ờ
ột điểm  
ần được  
KAB  
=
(
(  
RB  
)
modnA  
)
mod p  
c
ầ
ư
ạ
ấ
ả
m
ạ
o
3 – Tính thành phần EA theo công thức:  
hi  
để  
d
ể
ĩ
ộ
ẻ
ứ
ố
ạ
EA = H(KAB || SA )  
g
ử
ả
ừ
4 – G  
+ B th  
1 – Tính thành ph  
ử
i EA cho B.  
ạ
ấ
m
ậ
ụ
th  
ể
t
ương t  
ự
nh  
ư
vớ  
ật  
ự
c hi n:  
ệ
ở
ụ
đ
ây, đều cho th  
ấ
y
ầ
n SB theo công th  
ức:  
c
ủ
t toán đượ  
c
đảm b  
ả
o b  
ở
i
độ khó c  
ủa vi  
ệ
ặ
c
c
x1B  
(5.7)  
SB = yA  
( )  
mod p  
gi  
ả
i
ời 2 bài toán IFP(n) và DLP(p,g) ho  
2 – Tính khóa bí mật chia sẻ với A theo:  
.
kB  
x2B  
(5.8)  
(5.9)  
KBA  
=
(
(  
RA  
)
modnB  
)
mod p  
5) Giao th c trao đổi khóa  
ứ
3 – Tính thành ph  
EB = H(KBA || SB )  
i EB cho A.  
ần EB theo công thức:  
Gi thi t r ng 2 đối tượng tham gia truyền  
ả
ế
ằ
thông ở đây là A và B s ng m t thu t toán m  
mã khóa đối x ng (DES, AES,...) để mã hóa d li  
n trao đổi v i nhau, khi ó giao th  
đề xu ở đây (Thuật toán 5.1 được s  
thi t l p m t khóa bí m t chung/chia s  
B. Các tham s th ng c  
Thuật toán 1.1 và khóa hình thành theo Thuật  
ử
d
ụ
ộ
ậ
ậ
t
u
4 – G  
ử
ứ
ữ
ệ
B
ước 3:  
c
ầ
ớ
đ
ức trao đổi khóa  
+ A th  
Ki m tra n  
ượng tham gia trao đổi khóa là B và B  
được khóa bí m t chia s i A, sau  
dùng khóa này để trao đổi thông tin m  
1 thu t toán m t mã khóa đối x ng. Ngược l  
u: thì kh ng định đối tượng tham gia  
ự
c hi  
ệ
n:  
ấ
t
ậ
)
ử
d
ụng để  
ể
ế
u:  
thì kh  
ẳ
ng định đố  
ã thi t l  
ó A có th  
t v i B b ng  
i, tra  
i
EA = EB  
ế
ộ
ậ
ẻ
gi  
ữ
a A và  
t
đ
ế
ậ
p
ể
ố
h
ệ
ố
ũng được hình thành theo  
ậ
ẻ
vớ  
đ
ậ
ớ
ằ
toán 1.2. Gi  
t/công khai  
, trong  
ả
thi  
ế
t A và B có các c  
ặ
p khóa bí  
ậ
ậ
ứ
ạ
m
ậ
t
ương  
ứ
ng là  
và  
(x1A , x2 A , yA )  
n
ế
ẳ
EA ≠ EB  
trao đổi khóa là gi  
B th c hi n:  
Ki m tra n u:  
đ
ó:  
được chọn ngẫu  
(x1A , x1B )  
còn  
(x1B , x2B , yB )  
ả
mạ  
o và h  
ủ
y khóa  
đ
ã
được t  
ạ
o ra.  
nhiên trong kho  
ả
ng  
,
và  
(x2 A , yA ) (x2B , yB )  
(
1,q  
)
+
ự
ệ
ế
được tính theo (1.1) và (1.2) nh  
ư
sau:  
ể
thì B kh  
ẳ
ng định đố  
ã thi t l  
i B. Ngược l i, n  
ng định đối tượng tham gia trao đổ  
o.  
i
EA = EB  
−x1A  
yA  
yB  
=
=
(
(
g
g
)
mod p, x2 A  
mod p, x2B  
=
=
(
(
yA  
yB  
)
−1 mod  
−1 mod  
ϕ
(nA )  
(5.1)  
t
ượng tham gia trao đổi khóa là A và A  
được khóa bí m t chia s  
thì kh  
đ
ế ập  
−x1B  
)
)
ϕ
(nB )  
ậ
ẻ
v
ớ
ạ
ếu:  
ẳ
i
EA ≠ EB  
khóa là gi  
a) Thu  
ậ
t toán trao đổi khóa  
t l p khóa chung gi  
ả
mạ  
Vi c thi  
ệ
ế
ậ
ữ
a A và B được th  
sau:  
ực  
hi  
ệ
n theo các bước c Thuật toán 5.1 như  
ủa  
6
Hội thảo lần thứ III: Một số vấn đề chọn lọc về an toàn an ninh thông tin – Đà Nẵng, 07/12/2018  
b) Tính  
u c  
đ
úng đắn c  
ủ
a giao th  
ứ
c
-
Tính an toàn khóa  
security): vi c bi t m t ho  
a A và B c ng không cho phép m  
3 nào ó có th tính được các khóa khác c  
t l p b i A và B.  
Tính bí m t v phía trướ  
c tính các khóa bí m t chia sẻ đ  
trướ ó b i A và B là không th th  
các khóa bí m t c a A và B ( x1A, x2 A, x1B , x2B ) b  
đ
ã bi  
ế
t
(
ố
known – key  
khóa chia s  
đối tượng  
ng  
ệ
ế
ộ
ặ
c m t s  
ộ
ẻ
Đ
i
ề
ầ
n ch  
ứ
ng minh ở đây là: Cho p, q, p1, q1  
gi  
th  
ữ
ứ
ũ
ột  
n = p1 × q1  
,
là các s  
n > p,  
ố
nguyên t  
ố
th  
ỏ
a mãn:  
,
,
q | ( p −1)  
đ
ể
ũ
∈Z*p  
g = α ( p−1) / q mod p  
được thi  
ế
ậ
ở
ậ
,
v
ớ
i:  
H :  
{
0,1 ∗  
}
a Zh  
α
-
ề
c
(
forward secrecy):  
được thi t l  
c hi được, dù  
yA = g x mod p  
1A  
| q |≤| h |<| p |  
,
,
,
,
,
1< x1A , x1B < q  
,
vi  
ệ
ậ
ã
ế ập  
yB = g x mod p  
x2B yB  
−1 mod  
RA =  
u:  
x2A  
= (yA ) ϕ(nA )  
−1 mod  
1B  
c
đ
ở
ể
ự
ện  
,
ậ
ủ
ị
1< kA,kB < q  
yA  
=
(
)
ϕ(nB )  
yB  
gk mod p  
)
RB  
=
(
gk mod p  
)
mod nA  
lộ.  
A
B
,
modnB  
xA  
.
,
,
(
Các tính ch  
đảm b o b i m  
các d ng t n công:  
+ T n công khóa bí m  
ấ
t an toàn nói trên th c ch  
ự
ấ
t
đượ  
c
c
xB  
N
ế
,
mod p  
SB  
SA =  
modnA  
modnB  
(
yB  
kA  
)
( )  
= yA mod p  
ả
ở
ứ
c
độ an toàn c a thuật toán trướ  
ủ
x2 A  
,
(
(
(  
(
RB  
)
)
)
mod p  
mod p  
EA = H(KAB || SA )  
KAB  
KBA  
=
ạ
ấ
kB  
x2B  
ấ
ậ
t chia s  
(5.5) cho th  
Để tính x2 A  
(5.2)  
ẻ:  
,
thì:  
EB = H(KBA || SB )  
=
RA  
)
và  
.
EA = EB  
KAB = KBA  
Ch ng minh  
Th t v y, t  
Để tính được khóa KAB, t  
công c n ph i tính đượ  
n ph i gi được IFP(n) , còn để tính kA  
trước tiên c n ph i gi được bài toán phân tich s  
IFP(n) i tính: ải giải  
ừ
ấy kẻ tấn  
ứ
:
ầ
ả
c x2 A và kA .  
ậ
ậ
ừ
(5.3) và (5.3) ta có:  
c
ầ
ả
ả
i
từ  
kA  
x2 A  
KAB  
=
(
(
RB  
)
mod nA  
)
mod p  
kA  
ầ
ả
X =  
ả
i
ố
(5.10)  
yB .x2B  
gk mod p  
)
mod nA  
)
mod p  
B
x2 A  
=
=
(
(
(
r
ồ
ho  
ặ
c ph  
RSAP(n,e) để tìm:  
i gi i ti p bài toán  
(
RB  
)
modnA  
kA  
gk mod p  
)
mod p = gk mod p  
A.kB  
B
đượ  
X = RSAP n  
c
bài toán khai  
. Sau  
c
ăn  
đ
ó ph  
ả
ả
ế
M
ặ
t khác, t  
ừ
(5.2) và (5.8) ta lại có:  
(RB )  
yA )  
(
,
A
kB  
x2B  
KBA  
=
(
(
RA  
)
modnB  
)
mod p  
kB  
logarit r  
Vi c tính KBA  
ương t nh  
toán trước d  
đảm b o b ng tính khó c  
toán: IFP(n) và DLP(p,g)  
+ T n công gi  
t k gi  
khóa bí m t chia s  
khóa bí m t v i A thì c  
EB. Tuy nhiên, t (5.6) và (5.9) cho th  
n công t i thi u ph  
ó, độ an toàn c a thu  
n công gi o c ng sẽ đượ  
ng tính khó c a vi đồng th  
IFP(n) và DLP(p,g)  
ờ
i r  
ạ
c DLP(p,g) để tìm kA  
ng ph được th  
y. Nh y, độ an toàn c  
ng t n công khóa bí m  
:
.
RA )  
kA = DLPp,g  
(
)
(
(5.11)  
yB .x2 A  
gk mod p  
)
modnB  
)
mod p  
A
=
=
(
(
(
ệ
c
ũ
ả
ư
i
v
ự
c hi  
ệ
n các bướ  
a thu  
t chia sẻ đượ  
c
kB  
gk mod p  
)
mod p = gk mod p  
u c n ch  
A .kB  
t
ự
ư
ạ
v
ậ
ậ
ủ
ậ
t
A
ấ
ậ
c
T
ừ
(5.10) và (5.11) suy ra  
đ
i
ề
ầ
ứ
ng minh  
(5.12)  
ả
ằ
ủa vi  
ệ
c gi  
ả
i
đồng thời 2 bài  
th  
ứ
nh  
ất:  
KAB = KBA  
.
T
ừ
(5.1) và (5.4) ta có:  
ấ
ả
m
ạo  
:
xA  
)
SA  
=
(
yB  
mod p  
M
ộ
ẻ
ậ
ả
m
ẻ
ớ
ừ
ạ
o C mu  
i B ho  
n ph  
ố
ặ
n m  
c m  
i tính được EA ho  
y th c hi  
i tính đượ  
ạ
o danh A để  
tạo  
xA  
A.xB  
gx mod p  
)
mod p = g x mod p  
ừ (5.1) và (5.7) ta lại có:  
xB  
B
=
(
v
ớ
ạo danh B để chia  
T
s
ẻ
ậ
ầ
ả
ặc  
ện  
c
ấ
ự
SB  
=
(
yA  
)
mod p  
xB  
(5.13)  
(5.14)  
được vi  
KAB ho  
trước d  
ệ
c
đ
ó thì k  
ẻ
t
ấ
ố
ể
ả
=
(
gx mod p  
)
mod p = gx mod p  
A.xB  
A
ặ
c KBA. Do  
đ
ủ
ậ
t toán  
T
T
ừ
ừ
(5.12) và (5.13) suy ra:  
SA = SB  
(5.6), (5.9) và (5.14) suy ra  
hai:  
c) Độ an toàn c  
Giao th đượ  
c trao đổi khóa an toàn:  
c th c th entity authentication):  
c này vi c ki m tra u ki cho  
phép các đối tượng tham gia trao đổi khóa hoàn toàn  
có th xác th được danh tính c a nhau.  
Xác th explicit key  
authentication): C c ki m tra  
ki kh ng định B  
i mình và B c ng có  
u tương t nh th i A.  
ạ
ng t  
ấ
ả
m
ạ
ũ
c
đảm bảo  
điều cần chứng  
b
ằ
ủ
ệ
c gi  
ả
i
ời 2 bài toán:  
minh th  
ứ
.
EA = H(KAB || SA ) = H(KBA || SB ) = EB  
ủ
a giao th  
ức  
III. KẾT LUẬN  
ứ
c
c
đề xu t bảo đảm các tính chất  
ấ
c
ủ
a mộ  
t giao th  
Xác th  
ứ
Bài báo đề xu  
khai bao g m các thu  
giao th c trao đổi khóa an toàn cho các h  
đối x ng. Qua phân tích ánh giá cho th  
toán c a h t m đề xu t có độ an toàn đượ  
o b ng m độ khó c a vi c gi đồng th i 2 bài  
toán: bài toán phân tích m t s nguyên l n ra các  
th a s nguyên t và bài toán logarit r i r c trên Zp,  
ho c: bài toán phân tích m t s nguyên l  
th a s nguyên t và bài toán khai c  
ấ
t xây d  
ựng một hệ mật khóa công  
-
ự
ự
ể
(
ở
ồ
ậ
t toán mã hóa, ch  
ữ
ệ
ký s  
mật khóa  
ố và  
giao th  
ứ
ệ
ể
đ
i
ề
ện  
EA = EB  
ứ
ứ
đ
ấ
y các thu  
ật  
ể
-
ự
c
ủ
ệ
ủ
ệ
mậ  
ớ
i
ấ
c
đảm  
ực  
khóa hi  
n
(
b
ả
ằ
ứ
c
ủ
ệ
ải  
ờ
ũng ch ng vi  
ỉ
b
ằ
ệ
ể
điều  
ộ
ố
ớ
ệ
n
, A hoàn toàn có th  
ể
ẳ
đã  
ừ
ố
ố
ờ ạ  
EA = EB  
được khóa bí m  
kh ng định đượ  
ặ
ộ
ố
ớ
n ra các  
t
ạ
o
ể
ậ
t chia s  
ẻ
v
ớ
ũ
ế vớ  
ừ
ố
ố
ă
n trên vành Zn.  
th  
ẳ
c
đ
i
ề
ự
ư
7
Hội thảo lần thứ III: Một số vấn đề chọn lọc về an toàn an ninh thông tin – Đà Nẵng, 07/12/2018  
[13] Lưu Hồng Dũng, Hoàng Thị Mai, Nguyễn Hữu Mộng,  
” Một dạng lược đồ chữ ký xây dựng trên bài toán phân tích  
số”, Kỷ yếu Hội nghị Quốc gia lần thứ VIII về Nghiên cứu  
cơ bản và ứng dụng Công Nghệ thông tin (FAIR 2015); Hà  
Nội 09-10/07/2015. ISBN: 978-604-913-397-8.  
Hoàn toàn có th  
ki u t n công nào vào h  
không ph  
trên, do  
các ng d  
ể
kh  
ẳ
ng định r  
t thành công được mà  
đồng th i 2 bài toán khó nêu  
đề xu t có th phù h p với  
ằng không có bất kỳ  
ể
ấ
ệ mậ  
ả
i gi  
ả
i
đượ  
c
t m  
ầ
ờ
đó h  
ệ
mậ  
ớ
i
ấ
ể
ợ
[14] Luu Hong Dung, Le Dinh Son, Ho Nhat Quang and  
ứ
ụ
ng yêu c  
u cao về độ an toàn trong th  
ự
c
Nguyen  
Duc  
Thuy,” DEVELOPING  
DIGITAL  
tế.  
SIGNATURE SCHEMES BASED ON DISCRETE  
LOGARITHM PROBLEM”, The 8th National Conference  
on Fundamental and Applied IT Research (FAIR 2015). Ha  
Noi 09-10/07/2015 ISBN: 978-604-913-397-8.  
TÀI LIỆU THAM KHẢO  
[1] Q. X. WU, Y. X. Yang and Z. M. HU, "New signature  
schemes based on discrete logarithms and factoring",  
Journal of Beijing University of Posts and  
Telecommunications, vol. 24, pp. 61-65, January 2001.  
[15] Lưu Hồng Dũng, Nguyễn Đức Thụy, Nguyễn Lương Bình  
và Tống Minh Đức, “Phát triển thuật toán mật mã khóa  
công khai dựa trên bài toán logarit rời rạc”, Hội nghị khoa  
học Quốc gia lần thứ IX về Nghiên cứu cơ bản và ứng dụng  
Công nghệ thông tin (FAIR 2016). ISBN: 978-604-913-  
397-8. 2016.  
[2] Z. Y. Shen and X. Y. Yu, "Digital signature scheme based  
on discrete logarithms and factoring", Information  
Technology, vol. 28,pp. 21-22, June 2004.  
[3] Shimin Wei, “Digital Signature Scheme Based on Two  
Hard Problems”, IJCSNS International Journal of Computer  
Science and Network Security, VOL.7 No.12, December  
2007.  
[16] Lưu Hồng Dũng, Nguyễn Đức Thụy, Lê Đình Sơn và  
Nguyễn Thị Thanh Thủy, “ Một phương pháp xây dựng  
lược đồ chữ ký số dựa trên bài toán logarit rời rạc”, Hội  
nghị khoa học Quốc gia lần thứ IX về Nghiên cứu cơ bản  
và ứng dụng Công nghệ thông tin (FAIR 2016). ISBN: 978-  
604-913-397-8. 2016.  
[4] Eddie Shahrie Ismail, Tahat N.M.F., Rokiah. R. Ahmad, “A  
New Digital Signature Scheme Based on Factoring and  
Discrete Logarithms”, Journal of Mathematics and  
[17] Lưu Hồng Dũng, Nguyễn Đức Thụy, Nguyễn Văn Phúc và  
Đỗ Anh Tuấn, “Một phương pháp xây dựng thuật toán chữ  
ký số”, Hội thảo lần thứ I: Một số vấn đề chọn lọc về an  
toàn, an ninh thông tin (SoIS 2016), 11/2016.  
Statistics,  
04/2008;  
12(3).  
DOI:  
10.3844/jmssp.2008.222.225 Source:DOAJ.  
[5] Qin Yanlin , Wu Xiaoping,“ New Digital Signature Scheme  
Based on both ECDLP and IFP”, Computer Science and  
Information Technology, 2009. ICCSIT 2009. 2nd IEEE  
International Conference on, 8-11 Aug. 2009, E-ISBN :  
978-1-4244-4520-2, pp 348 - 351.  
[18] Nguyen Duc Thuy and Luu Hong Dung, “A New  
Construction Method of Digital Signature Algorithms”,  
IJCSNS International Journal of Computer Science and  
Network Security. Vol. 16 No. 12 pp. 53-57, December  
2016. ISSN: 1738 - 7906.  
[6] Swati Verma1, Birendra Kumar Sharma, “A New Digital  
Signature Scheme Based on Two Hard Problems”,  
International Journal of Pure and Applied Sciences and  
Technology, ISSN 2229 – 6107, Int. J. Pure Appl. Sci.  
Technol., 5(2) (2011), pp. 55-59.  
[19] Nguyen Duc Thuy, Nguyen Tien Giang, Le Dinh Son and  
Luu Hong Dung, “ A Design Method of Digital Signature  
Scheme Based on Discrete Logarithm Problem”, IJCSNS  
International Journal of Computer Science and Network  
Security. Vol. 17 No. 2 pp. 214-218, February 2017. ISSN:  
1738 - 7906.  
[7] Sushila Vishnoi , Vishal Shrivastava, ”A new Digital  
Signature Algorithm based on Factorization and Discrete  
Logarithm problem”, International Journal of Computer  
Trends and Technology, volume 3, Issue 4, 2012.  
[20] Lưu Hồng Dũng, Nguyễn Vĩnh Thái và Nguyễn Đức Thụy,  
“ Phát triển hệ mật khóa công khai từ hệ mã Pohlig -  
Hellman “, Hội thảo lần thứ II: Một số vấn đề chọn lọc về  
an toàn, an ninh thông tin (SoIS 2017), Tp. HCM  
03/12/2017.  
[8] A.N. Berezin, N.A. Moldovyan, V.A. Shcherbacov,  
"Cryptoschemes Based on Difficulty of Simultaneous  
Solving Two Different Difficult Problems", Computer  
Science Journal of Moldova, vol.21, no.2(62), 2013.  
[21] Phạm Văn Hiệp, Nguyễn Hữu Mộng và Lưu Hồng  
Dũng,” MỘT THUẬT TOÁN CHỮ KÝ XÂY DỰNG  
DỰA TRÊN TÍNH KHÓ CỦA VIỆC GIẢI ĐỒNG THỜI  
HAI BÀI TOÁN PHÂN TÍCH SỐ VÀ LOGARIT RỜI  
RẠC “, TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ ĐẠI  
HỌC ĐÀ NẴNG, SỐ 7(128).2018. ISSN 1859-1531.  
[9] Lưu Hồng Dũng, Trần Trung Dũng, Tống Minh  
Đức, “Nghiên cứu xây dựng hệ tích hợp mật mã khóa công  
khai - chữ ký số”, Tạp chí Khoa học và Kỹ thuật (Học viện  
KTQS), số 149 (08-2012). ISSN: 1859 - 0209., 01/08/2012.  
[10] Lưu Hồng Dũng, “Phát triển thuật toán mật mã khóa công  
khai dựa trên hệ mật El Gamal”, Chuyên san Các công trình  
nghiên cứu, phát triển và ứng dụng CNTT và TT, Bộ TT và  
TT, tập V-1, số 8(28) (12-2012). ISSN: 1859 - 3526., pp. 8,  
01/12/2012.  
[22] Nguyễn Lương Bình, Lưu Hồng Dũng, Tống Minh  
Đức, “Một phương pháp phát triển hệ mật khóa công khai”,  
Hội nghị Quốc gia lần thứ XI về Nghiên cứu cơ bản và ứng  
dụng CNTT (FAIR 2018). ISBN: 978-604-913-397-8. Hà  
Nội 8/2018.  
[23] R. L. Rivest, A. Shamir, and L. M. Adleman, “A Method  
for Obtaining Digital Signatures and Public Key  
Cryptosystems”, Commun. of the ACM, Vol. 21, No. 2,  
1978, pp. 120-126.  
[11] Lưu Hồng Dũng, Ngô Đăng Tiến, Trần Trung Dũng, Vũ  
Tất Thắng, “Phát triển một số thuật toán mật mã khóa công  
khai”, Hội thảo quốc gia lần thứ XV: Một số vấn đề chọn  
lọc của Công nghệ Thông tin và Truyền thông. Hà Nội 3-  
4/12/2012. ISBN: 978 - 604 - 67 - 0645 - 8., pp. 6,  
04/12/2012.  
[24] National Institute of Standards and Technology, NIST FIPS  
PUB 186-4. Digital Signature Standard, U.S. Department of  
Commerce, 2013.  
[12] Lưu Hồng Dũng, Hồ Ngọc Duy, Nguyễn Tiền Giang and  
Nguyễn Thị Thu Thủy, “ Phát triển một dạng lược đồ chữ  
ký số mới”, Hội thảo quốc gia lần thứ XVI: Một số vấn đề  
chọn lọc của Công nghệ Thông tin và Truyền thông, Đà  
Nẵng - 11/2013. ISBN: 978 - 604 - 67 - 0645 - 8.  
[25] T. ElGamal, “A public key cryptosystem and a signature  
scheme based on discrete logarithms”, IEEE Transactions  
on Information Theory. 1985, Vol. IT-31, No. 4. pp.469–  
472.  
8
Hội thảo lần thứ III: Một số vấn đề chọn lọc về an toàn an ninh thông tin – Đà Nẵng, 07/12/2018  
9
Hội thảo lần thứ III: Một số vấn đề chọn lọc về an toàn an ninh thông tin – Đà Nẵng, 07/12/2018  
10  
pdf 10 trang baolam 26260 Free
Bạn đang xem tài liệu "Hệ mật khóa công khai dựa trên tính khó của việc giải đồng thời 2 bài toán phân tích số và logarit rời rạc/khai căn", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfhe_mat_khoa_cong_khai_dua_tren_tinh_kho_cua_viec_giai_dong_t.pdf