Phát triển lược đồ chữ ký số mù

Hi Tho Quc Gia 2015 về Đin t, Truyn Thông và Công NghThông Tin (ECIT 2015)  
PHÁT TRIN LƯỢC ĐỒ CHKÝ SMÙ  
Nguyn Tin Giang, Nguyn Đức Thy, Lưu Hng Dũng.  
Cc Công NghThông Tin – BQP, Trường Cao Đẳng Kinh Tế - KThut Thành PhHChí Minh,  
Khoa Công NghThông Tin. Hc Vin KThut Quân S.  
Lược đồ chký smù RSA được phát trin tlược đồ chữ  
ký sRSA [6]. Lược đồ chký smù RSA có thmô tnhư  
sau: GisA là người ký có khóa bí mt (d), công khai (n,e)  
được hình thành theo lược đồ chký RSA. B là người to ra  
bn tin M và yêu cu A ký lên M (người yêu cu ký). Để che  
du danh tính ca B sau khi bn tin M đã được ký, thtc  
hình thành chký (“ký mù”) được thc hin qua các bước như  
sau:  
Tóm ttBài báo đề xut xây dng 2 lược đồ chký smù  
tvic phát trin lược đồ chký strên cơ sbài toán  
logarithm ri rc. Các lược đồ mi đề xut ở đây có mc  
độ an toàn cao hơn vkhnăng chng tn công làm lộ  
ngun gc ca bn tin được ký so vi mt slược đồ đã  
biết trước đó trong thc tế  
.
Tkhóa- Digital Signature, Blind Signature, Digital  
Signature Scheme, Blind Signature Scheme.  
Bước 1: B làm “mù” bn tin M bng cách chn ngu nhiên  
mt giá trk tha mãn: 1< k < n k nguyên tcùng nhau  
vi n (gcd(k,n) = 1), sau đó B tính: m'= m × ke modn , ở  
đây: m = H(M ) là giá trị đại din ca bn tin cn ký M và  
I.  
ĐẶT VN ĐỀ  
Khái nim chký sđược đề xut bi D. Chaum vào  
năm 1983 [1], đây là mt loi chký số được sdng để xác  
thc tính toàn vn ca mt bn tin đin tvà danh tính ca  
người ký, nhưng không cho phép xác thc ngun gc thc sự  
ca bn tin được ký. Nói cách khác, loi chký này cho phép  
n danh người to ra bn tin được ký. Trong [2-4] đã chra  
ng dng ca loi chký này khi cn bo vtính riêng tư ca  
các khách hàng trong các hthng thanh toán đin thay vn  
đề ẩn danh ca ctri trong vic tchc bu ctrc tuyến [5].  
Mt đim cn chú ý ở đây là, vi các loi chký sthông  
thường thì người ký cũng chính là người to ra bn tin được  
ký, còn vi chký smù thì người ký và người to ra bn tin  
được ký là 2 đối tượng hoàn toàn khác nhau. Đây là tính cht  
đặc trưng ca chký smù và cũng là mt tiêu chí quan trng  
để đánh giá mc độ an toàn ca loi chký snày.  
Trong [1-5] các tác giả đã đề xut mt slược đồ chký số  
ng dng khi cn bo vtính riêng tư ca các khách hàng  
trong các hthng thanh toán đin thay vn đề ẩn danh ca  
ctri trong vic tchc bu ctrc tuyến. Tuy nhiên, đim  
yếu chung ca các lược đồ trên là không có khnăng chng li  
kiu tn công làm lngun gc ca bn tin được ký, vì thế khả  
năng ng dng ca các lược đồ này trong thc tế là rt hn chế.  
Ni dung bài báo tp trung phân tích đim yếu có thtn công  
làm lngun gc bn tin được ký ca mt slược đồ chký số  
đã được công b, từ đó đề xut xây dng mt lược đồ mi  
độ an toàn cao hơn vkhnăng gibí mt ngun gc ca  
bn tin được ký có thể đáp ng các yêu cu mà thc tế đt ra.  
H(.) là hàm băm kháng va chm. B gi bn tin đã được làm  
mù (m’) cho A.  
Bước 2: A ský lên m’ bng thut toán ký ca lược đồ  
RSA: s'= (m')d modn ri gi li s’ cho B.  
Bước 3: B “xóa mù” s’ và nhn được chs như sau:  
s = s'×k1 modn  
.
Vic kim tra tính hp lca s và do đó là tính toàn vn  
ca M được thc hin như ở lược đồ RSA. Vn đề ở đây là,  
mt đối tượng bt kcó thkim tra tính hp lca s, từ đó  
khng định tính toàn vn ca M và danh tính người ký bng  
thut toán kim tra RSA, nhưng không thxác định được bn  
tin M là do ai to ra. Nghĩa là danh tính ca B đã được giu  
kín.  
2.1.2. Tn công làm lngun gc bn tin được ký  
Vi lược đồ chký smù RSA như đã mô tả ở trên, vic  
xác định danh tính ca người to ra bn tin được ký M là có  
ththc hin được. Bi vì ti thi đim ký, người ký (A) chỉ  
không biết ni dung ca M, nhưng danh tính ca B thì A hoàn  
toàn biết rõ, điu này là hin nhiên vì A chký khi biết rõ B là  
ai. Gisdanh tính ca B được ký hiu là IDB, để xác định  
danh tính ca người yêu cu ký tbn tin M và chs tương  
ng sau thi đim ký (khi M và s đã được công khai), mi  
ln ký chcn A lưu trgiá trs’ và IDB trong mt cơ sdữ  
liu. Từ đó, vic xác định danh tính ca người yêu cu ký -  
IDB tbn tin được ký M và chs là hoàn toàn có ththc  
hin được bng mt thut toán như sau:  
Thut toán 1.1:  
II. TN CÔNG LÀM LNGUN GC BN TIN ĐỐI  
VI MT SLƯỢC ĐỒ CHKÝ SMÙ.  
Input: (M,s), {(si’, IDBi)| i=0,1,2,…N}.  
Output: IDBi.  
[1].  
, i = 0  
m H (M )  
2.1. Tn công lược đồ chký smù RSA  
2.1.1. Lược đồ chký smù RSA  
Hi Tho Quc Gia 2015 về Đin t, Truyn Thông và Công NghThông Tin (ECIT 2015)  
Output: IDBi.  
[2]. select: (si ', IDBi )  
[1].  
, i = 0  
m H (M )  
ksi '×md modn  
[3].  
[2]. select:  
(
Ri ',mi ', si ', IDBi )  
[4]. if gcd(k,n) 1 then  
[3].  
α
β
mi '×m1 × r × 1 mod q  
( )  
R'  
s si '×r ×  
× gβ mod p  
[4.1]. i i +1  
[4.2]. goto [2]  
1  
)
m1 ×  
(
(
R'  
)
modq  
[4].  
[5].  
[6].  
ssi '×(k)1 modn  
α
[5].  
R ←  
(
Ri '  
)
[6]. if (ss) then  
rRmodq  
[7]. if  
(
rr  
)
then  
[6.1]. i i +1  
[6.2]. goto [2]  
[7]. return IDBi  
Nhn xét:  
[7.1]. i i +  
[7.2]. goto [2]  
[8]. return IDBi  
Nhn xét:  
1
TThut toán 1.1 cho thy, nếu N không đủ ln thì vic  
xác định được danh tính ca người yêu cu ký (người to ra  
bn tin được ký) là hoàn toàn có ththc hin được. Nói cách  
khác, lược đồ chký smù RSA là không an toàn nếu số  
lượng bn tin được ký không đủ ln.  
Tương tnhư vi lược đồ chký mù RSA, tThut toán  
1.2 cho thy, nếu N không đủ ln thì vic xác định được danh  
tính ca người yêu cu ký (người to ra bn tin được ký) là  
hoàn toàn có ththc hin được. Nói cách khác, lược đồ chữ  
ký smù DSA cũng skhông an toàn xét theo khía cnh  
chng tn công làm lngun gc bn tin nếu slượng bn tin  
được ký không đủ ln.  
2.3. Tn công lược đồ chký smù Nyberg-Rueppel  
2.3.1. Lược đồ chký sNyberg-Rueppel  
Tham shthng ca lược đồ chký sdo K. Nyberg và  
R. A. Rueppel đề xut [7] được la chn tương tnhư ở lược  
2.2. Tn công lược đồ chký smù DSA  
2.2.1. Lược đồ chký smù DSA  
Tlược đồ chký sDSA [8], nhóm tác giJan L.  
Camenisch, Jean-Marc Piveteau, Markus A. Stadler đề xut  
mt lược đồ chký s[8] vi thtc hình thành tham số  
hthng bao gm mt snguyên tp, mt snguyên tq là  
ước ca (p-1) và phn tsinh g Z *p có bc là q. Người ký  
đồ DSA. Để ký lên mt bn tin M có giá trị đại din m Zp  
,
có khóa bí mt x Zq và khóa công khai tương ng là  
x
người ký chn ngu nhiên mt giá trị  
và tính:  
k Zq  
. Thtc hình thành chký “mù” bao gm các  
y = g mod p  
bước như sau:  
r = m × gk mod p  
s = k + x.r mod q  
1. a) Người ký (A) chn mt giá trk Zq và tính  
R' = gk mod p  
Chký lên bn tin M ở đây là cp (r,s). Chđược coi là  
hp lnếu tha mãn phương trình kim tra:  
b) A kim tra nếu  
thì thc hin li bước  
gcd(R', q) 1  
m = ys × gr × r mod p  
a). Ngược li, A gi R cho người yêu cu ký (B).  
2. a) Người yêu cu ký B chn 2 giá trị  
Ở đây  
m
là giá trị đại din ca bn tin cn thm tra M:  
và tính  
α
,
β
Zq  
, vi H(.) là hàm băm.  
m = H(M )  
α
)
× gβ mod p  
.
R =  
(
R'  
2.3.2. Lược đồ chký smù Nyberg-Rueppel  
b) B kim tra nếu  
thì tính tiếp giá trị  
gcd(R', q) = 1  
Cũng nhóm tác giJan L. Camenisch, Jean-Marc  
Piveteau, Markus A. Stadler [8] đã đề xut mt lược đồ chký  
sđược phát trin tlược đồ chký Nyberg-Rueppel vi  
thtc hình thành chký “mù” bao gm các bước như sau:  
m'=  
× m × R'×R1 mod q  
ri gi m’ cho A. Nếu  
α
điu kin chra không tha mãn, B thc hin li bước  
a).  
3. Người ký A tính giá trị  
1. Người ký (A) chn mt giá trk Zq và tính  
ri  
s' = (k × m'+x × R') mod q  
r'= gk mod p  
gi cho B.  
ri gi cho người yêu cu ký (B).  
4. Người yêu cu ký B tính các thành phn (r,s) ca chữ  
α Zq , β  
Zq* và tính  
1  
2. a) B chn ngu nhiên giá trị  
ký:  
,
.
s = (s'×R × R' + β × m) mod q  
r = R mod q  
( )  
β
)
r = m × gα ×  
(
r'  
mod p  
m'= r × β 1 modq  
Thtc kim tra tính hp lca chký hoàn toàn tương  
tnhư ở lược đồ chký DSA.  
,
.
b) B kim tra nếu m'Zq* thì gi m’ cho người ký A.  
2.2.2. Tn công làm lngun gc bn tin được ký  
Để tn công làm lngun gc bn tin được ký M, người  
ký A cn lưu trgiá trcác tham s{R’,m’,s’} và IDB mi  
ln ký. A có thxác định được danh tính ca B bng Thut  
toán 1.2 như sau:  
Ngược li, B thc hin li bước a).  
3. A tính giá trị  
ri gi cho B.  
s'= (k + x ×m') modq  
4. B tính  
và chký ca A lên M là  
s = (s'×  
β + α) mod q  
cp (r,s).  
Thut toán 1.2:  
Input: (M,r,s), {(Ri’, mi’,si’,IDBi)| i=0,1,2,…N}.  
Hi Tho Quc Gia 2015 về Đin t, Truyn Thông và Công NghThông Tin (ECIT 2015)  
e= FH (T || M )  
:  
Thtc kim tra tính hp lca chký tương tnhư ở  
lược đồ chNyberg-Rueppel. Nghĩa là: chký (r,s) được  
coi là hp lnếu tha mãn phương trình kim tra:  
3. Tính giá tr  
4. Ki m tra n  
. Ngược l  
2.4.2. T n công làm l  
ế
u: e= e  
'
thì  
(
e
',  
ch  
s
') được công nh  
n hp  
m = ys × gr × r mod p  
lệ  
i,  
(
e
', s')  
sẽ  
b
t
i.  
ngu  
ngu  
các tham s  
xác định được danh tính c  
n g  
c b  
c b  
{T,e,s} và IDB  
a B b  
n tin được ký  
n tin được ký M, người ký  
i l n ký.  
Ở đây  
m là giá trị đại din ca bn tin cn thm tra M.  
Để n công làm l  
A c n l u tr giá tr  
ừ đó, A có th  
t
ư
n g  
2.3.3. Tn công làm lngun gc bn tin được ký  
Để tn công làm lngun gc bn tin được ký M, người ký  
A cn lưu trgiá trcác tham s{r’,m’,s’} và IDB mi ln  
ký. Từ đó, A có thxác định được danh tính ca B bng thut  
toán như sau:  
mỗ ầ  
T
ng Thut  
toán 1.4 nh  
ư
sau:  
Thut toán 1.4  
:
Input: (M,e’,s’), {(ei, si,Ti, IDBi)| i=0,1,2,…N}.  
Output: IDBi.  
Thut toán 1.3:  
Input: (M,r,s), {(ri’, mi’,si’, IDBi)| i=0,1,2,…N}.  
Output: IDBi.  
[1].  
, i = 0  
m H (M )  
[1].  
, i = 0  
m H (M )  
[2]. select  
:
(ei , si ,T , IDBi )  
i
[2]. select:  
(r ',mi ', si ', IDBi )  
i
[3].  
[4].  
[5].  
τ
(e'ei )modq  
[3].  
β
r ×  
mi '  
( )  
1 mod q  
ε
(s'si )mod q  
[4].  
[5].  
T = Ti × yτ × gε mod p  
α
(s si '×  
β
)modq  
β
)
r* = m × gα ×  
(
r '  
mod p  
e= FH (T|| M )  
i
[6].  
[6]. if  
(
r
*
r  
)
then  
[7]. if (  
ee') then  
[6.1]. i i +  
[6.2]. goto [2]  
[7]. return IDBi  
1
[7.1]. i i +  
[7.2]. goto [2]  
[8]. return IDBi  
1
Nh  
ương t  
toán 1.3 cho th  
không an toàn n  
ó vi c xác định ngu  
2.4. Tn công lược đồ chký smù Moldovyan  
2.4.1. Lượ đồ ch ký s mù Moldovyan  
ây là lượ đồ ch ký s mù được N.A. Modovyvan [9]  
t trên c phát tri n t chu ch ký s  
th ng bao g  
n t sinh  
n xét:  
Nh  
ương t  
toán 1.4 cho th  
toàn n u s ượng b  
c xác định ngu n g  
n xét:  
T
nh  
ế
ư
2 thu  
y lượ  
u s ượng b  
n g c b  
t toán ký mù  
đồ ch ký Nyberg-Rueppel là  
n tin được ký không đủ n, khi  
n tin là có th th c hi được.  
đã xét trên, Thut  
T
nh  
ư
các thu  
t toán ký mù  
đ
ã xét  
trên, Thut  
c
y lượ  
c
đồ ch  
ký mù Moldovyan là không an  
n, khi  
được.  
l
lớ  
ế
l
n tin được ký (N) không đủ  
c b n tin là có th th c hin  
l
đó  
đ
n  
vi  
c
III. ÂY D  
X
NG LƯỢ ĐỒ CH KÝ S  
C
MÙ  
ây  
t như ở  
như ở các lượ  
Đ
c
Qua phân tích các lượ  
c
đồ ch  
ký s mù trên  
đ
đã cho  
đề xu  
ơ
sở  
n
ca  
thấ  
y vi c làm “mù” b n tin v  
ký s mù RSA, hay v  
DSA, Nyberg-Rueppal Moldovyan thì người ký v  
tìm được ngu n g c th c s a b n tin được ký (danh tính  
a người yêu c u ký). M c này đề xu t vi c phát tri n lượ  
đồ ch ký s mù t t lượ đồ ch ký c ở được c i ti n t  
ượ đồ ch ký Schnorr [13] và m t lượ đồ xây d ng trên bài  
toán logarit r i r c – DLP (Discrete Logarithm Problem) [14].  
m c a các lượ đồ i này là c ng ch ng 2 tham  
bí m t như ở các lượ đồ mù DSA, Nyberg-Rueppal hay  
Moldovyan,... nh ng không cho phép người ký hay b t k  
đối tượng nào khác có th xác định được ngu n g c th  
a b n tin như ở các lượ đồ đ được công b trướ ó [1-  
i mộ  
t tham s bí m  
l
c
ượ  
c
Belarusian STB 1176.2-9 [12]. Các tham s  
h
m  
g Z*p  
đồ ch  
i 2 tham s  
đồ  
n có thể  
2 s nguyên t p, q th a mãn: q|(p-1) và ph  
có b  
c là q. Người ký có khóa bí mt  
và khóa công  
x Zq  
c hình thành chký  
c
c
c
x
khai tương  
ng là  
. Th  
t
y = g mod p  
m
c
ơ
s
ế
“mù” bao g  
1. Người ký A ch  
m các bước nh  
n ng  
< k < q và tính  
ư
sau:  
l
c
c
u nhiên m  
t giá tr  
k tha mãn:  
k
1
r
i g i T cho người  
T = g mod p  
Ưu  
đ
i
c
mớ  
ũ
sdụ  
yêu c  
2. B ch  
T'= T × y × g mod p  
ây: FH(.) là hàm b  
u ký B.  
n ngu nhiên 2 giá trị τ ϵ ri tính:  
ε
số  
c
ư
c  
τ
,
và  
, ở  
)modq  
mộ  
t
c đ  
e'= FH (T'|| M )  
e = (e'−  
τ
sự  
c
c
ã
đ
ă
m và “||” là toán t  
ni 2 xâu bit .  
5].  
Sau  
đ
ó B g  
i e cho A.  
3. A tính giá tr  
r
i g  
i cho B.  
3.1. Xây dng lược đồ chcơ sở  
3.1.1. Lược đồ chký cơ sLD 15.01A  
s = (k x ×e)mod q  
n th 2 c a ch  
a A lên M là c  
m tra tính h p l  
STB 1176.2-9, nh sau:  
1. Ki m tra n u:  
2. Ngược l  
2. Tính giá tr  
4. B tính thành ph  
ch ký c  
Th c ki  
ký:  
và  
s'= (s +ε)modq  
Lược đồ chký cơ sở ở đây, ký hiu LD 15.01A, được  
ci tiến tlược đồ chký do C. Schnorr đề xut vào năm 1991  
được sdng làm cơ sở để phát trin lược đồ chký smù  
phn tiếp theo. Lược đồ chký LD 15.01A bao gm các  
thut toán hình thành tham svà khóa, thut toán hình thành  
và kim tra chký như sau:  
p (e', s').  
t
ca chký tương tnhư ở  
ư
ế
và  
thì chuy  
n sang bướ  
p l  
c
1< s'< q  
0 < e'< q  
i,  
(
e
',  
s
')  
sẽ  
b
t
chi v  
tính h  
.  
T
=
gs  
×
ye mod p  
a) Thut toán hình thành tham svà khóa  
'
'
:  
Hi Tho Quc Gia 2015 về Đin t, Truyn Thông và Công NghThông Tin (ECIT 2015)  
M
c
độ an toàn c  
a m  
ng:  
n công làm l  
n công gi  
ng t  
độ an toàn xét theo kh  
t c a lượ đồ ph  
a bài toán logarit r i r c, hoàn toàn tương t  
các lượ đồ ch  
Schnorr [13].  
kh  
(2.5a) và (2.6a) c  
(không được t  
khóa bí m t x c  
là ch ký h p l  
n tin M n u th  
e = H((gs × ye mod p) || M)modq  
ương t như ở ượ đồ ch  
(2.10a) là m ng bài toán khó n  
thước c a d đầu ra hàm b m H(.) được ch  
3.1.2. Lượ LD 15.01B  
ượ đồ ch ở đề xu ở đây, ký hi  
được xây d a bài toán DLP và được s  
mù trong ph n ti p theo.  
và khóa  
t lược đồ chký snói chung được  
Thut toán 2.1a:  
đ
ánh giá qua các khnă  
Input: p, q|(p-1), x – khóa bí mt ca A.  
Output: g, y, H(.).  
-
-
Ch  
Ch  
ng t  
ng t  
khóa m  
o ch  
n công làm l  
t.  
g h( p1) / q mod p  
m
ký.  
[1].  
,
1< h < p  
0,1 ∗  
H :{ } a Zt  
V
kh  
y m  
khóa m  
n
ă
c
ng ch  
khóa mât: T  
(2.1a)  
q < t < p  
,
[2]. select  
cho th  
làm l  
gi i c  
nă  
ng ch ng t  
n công  
y gx mod p  
c
c
ơ
s
thu  
c vào m  
c
độ khó  
[3].  
(2.1a)  
như vi  
[4]. return {g,y,H(.)}  
c
ký DSA [9] , GOST R34.10-94 [10] và  
b) Thut toán ký  
V
n
ă
ng ch  
a lượ  
o ra b  
a người ký) nh  
đối tượng s  
a mãn u ki n:  
ng t  
n công gi  
đồ cho th  
i Thu t toán ký 2.2a c  
ng v n sẽ được công nh  
m
o ch  
: T  
t c p (e,s) b  
a lượ đồ và  
(2.3a),  
c
c
c
ơ
s
y, m  
t  
Thut toán 2.2a  
Input: p, q, g, x, k, M – b  
Output: (e,s) – ch ký c  
:
k
c
n tin c  
n ký.  
t
ư
n
a  
A
lên M.  
a
hữ  
u khóa công khai y lên  
r gk mod p  
e H r || M modq  
s (k + x × e)mod q  
[1].  
[2].  
[3].  
(2.2a)  
b
ế
đ
i
(2.3a)  
(2.4a)  
(
)
(2.10a)  
T
l
c
ký Schnorr, có th  
th  
p, q và kích  
đủ n.  
y rng  
[4]. return (e,s)  
Chú thích:  
t d  
ế
u các tham s  
n
li  
u
ă
lớ  
- Toán t  
c) Thu t toán ki  
Thut toán 2.3a  
Input: p, q, g, y, M, (e,s).  
“||” ở đây là phép n  
i 2 xâu bit.  
c
đồ ch  
ký c  
ơ
s
m tra  
L
c
ký c  
ơ
s
t
u LD 15.01B,  
:
ng d  
a trên tính khó c  
n lượ đồ ch ký s  
t toán hình thành tham s  
Thut toán 21b  
d
ng để phát tri  
c
ế
Output: (e,s) = true  
/
.
false  
a) Thu  
s
e
[1].  
[2].  
(2.5a)  
u g × y mod p  
:
(2.6a)  
v H  
(
u || M  
)
mod q  
Input: p, q|(p-1), x – khóa bí m  
Output: g, y, H(.).  
t ca A.  
[3]. if  
else  
Chú thích:  
- N u k t qu  
ngu n g c và tính toàn v  
công nh n.  
- N u k t qu  
i dung b n tin M  
d) Tính úng đắn c  
u c n ch  
a mãn u ki  
(
v = e  
)
then {return true }  
g h( p1) / q mod p 1< h < p  
[1].  
,
false  
}
{
return  
[2]. select  
[3].  
H : a Zt ,q < t < p  
0,1 ∗  
{ }  
y gx modp  
ế
ế
tr  
về  
true thì ch  
ký (e,s) h  
p l, do đó  
1  
(2.1b)  
n c a b n tin c  
n th m tra M đượ  
c
[4]. return {g,y,H(.)}  
ế
ế
tr  
v
đ
false thì ch  
ã b đổi.  
a lượ đồ  
ký (e,s) là gi  
mo, hoặ  
c
n
sa  
c
b) Thu  
Thut toán 2.2b  
Input: p, q, g, x, k, M – b  
t toán ký  
đ
cơ sLD 15.01A  
:
Đ
i
ng minh ở đây là: cho p, q là 2 s  
nguyên t  
i:  
n tin c  
n ký.  
g = h( p1) / q mod p  
th  
đ
i
n
q | (p 1)  
,
vớ  
Output: (e,s) – ch  
ký c  
a  
A
lên M.  
r gk mod p  
H :  
{
0,1 ∗  
}
a Zt  
[1].  
(2.2b)  
q < t < p  
,
vớ  
i:  
,
1 < x,k < q  
,
,
1< h < p  
[2].  
[3].  
(2.3b)  
(2.4b)  
r = gk mod p  
e H  
(r || M )modq  
y = gx mod p  
e = H(r || M)modq  
u = gs × ye mod p  
,
,
s x ×(k + e)mod q  
.
N
ế
u:  
và  
s = (k + x × e)mod q  
[4]. return (e,s)  
thì: v = e  
.
v = H  
(
u || M  
)
mod q  
Th t v  
y, t  
(2.1a), (2.3a), (2.4a) và (2.5a) ta có:  
c) Thu  
Thut toán 2.3b  
Input: p, q, g, y, M, (e,s).  
t toán kim tra  
u = gs × ye mod p = gk+x.e × gx.e mod p  
= gx.e+kx.e mod p = gk mod p  
:
(2.7a)  
Output: (e,s) = true  
/
.
false  
T
(2.2a) và (2.7a), suy ra:  
u = r  
u ge × ys mod p  
[1].  
(2.5b)  
(2.6b)  
(2.8a)  
(2.9a)  
Thay (2.8a) vào (2.6a) ta được:  
v = H u || M modq = H(r || M )modq  
(2.3a) và (2.9a), suy ra: v = e  
ây là u c n ch ng minh.  
độ an toàn c a lượ đồ  
[2].  
v H(u || M )modq  
(
)
[3]. if ( v = e ) then  
{
return true  
}
T
false  
else  
{
return  
}
Đ
đ
i
e) M  
c  
c
cơ sở  
d) Tính  
đ
úng đắn c  
a lượ  
c
đồ  
c
ơ
sở  
LD 15.01B  
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)  
Đ
i
u c  
n ch  
u ki  
ng minh ở đây là: cho p, q là 2 s  
nguyên tố  
Output: (e,s) = true  
/
.
false  
q | (p 1)  
g = h( p1) / q mod p  
th  
a mãn  
đ
i
n
,
v
i:  
,
u gs × ye mod p  
[1].  
[2].  
(3.7a)  
(3.8a)  
0,1 ∗  
}
a Zt  
vớ  
i:  
q < t < p  
,
,
H :  
{
1 < x,k < q  
1< h < p  
y = g x mod p  
v H  
(u || M  
)
modq  
1  
r = gk mod p  
e = H(r || M)modq  
[3]. if  
else  
Chú thích:  
- N u k t qu  
được công nh n, do  
M và danh tính c a người ký (A) được kh  
- N u k t qu tr là false thì ch ký (e,s) là gi  
i dung b n tin M  
c) Tính úng đắn c  
u c n ch  
a mãn  
(
v = e  
)
then  
{return true }  
,
,
,
u = ge × ys mod p  
false  
}
{
return  
.
N
.
ế
u:  
và  
s = x × (k + e) mod q  
thì: v = e  
v = H  
(
r || M  
)
modq  
ế
ế
tr  
về  
true thì tính h  
p l  
a b  
ng định.  
c
a ch  
ký (e,s)  
m tra  
Th  
t v y, t  
(2.1b), (2.3b), (2.4b) và (2.5b) ta có  
:
đ
ó tính toàn v n c  
n tin c n thẩ  
1  
u = ge × ys mod p = ge × g x.x .(k+e) mod p  
= ge+ke mod p = gk mod p  
(2.7b)  
ế
ế
về  
m
o, ho  
c
n
đ
ã b  
s
c
a
đổi.  
T
(2.2b) và (2.7b), suy ra:  
u = r  
đ
a lượ  
đồ LD 15.02A  
(2.8b)  
(2.9b)  
Đ
i
ng minh ở đây là: cho p, q là 2 s  
nguyên t  
Thay (2.8b) vào (2.6b) ta được:  
v = H u || M mod q = H (r || M )mod q  
(2.3b) và (2.9b), suy ra: v = e  
ây là u c n ch ng minh.  
độ an toàn c a lượ đồ  
ương t ượ đồ LD 15.01A, m  
ng ch ng t n công làm l khóa m  
15.01B ph thu c vào m độ khó gi i c a bài toán logarit r  
c, còn kh ng ch ng t n công gi o ch ph thu  
vào độ khó c a vi c gi i (2.10b):  
e = H((ge × ys modp) || M)modq  
3.2. Xây dng lược đồ chký smù  
3.2.1. Lượ đồ ch ký s mù LD 15.02A  
đồ ch ký s mù ở đây được phát tri  
LD 15.01A. Gi A là người người ký có khóa công  
t toán 2.1a c a lượ đồ  
n tin M được ký. Khi ó, thu t toán ký  
a lượ đồ được ch ra nh  
g = h( p1) / q mod p  
th  
1< h < p  
y = gx mod p  
đ
i
u ki  
n
,
vớ  
i:  
q | (p 1)  
(
)
0,1 ∗  
}
a Zq  
1 < x,k < q  
1 <  
α
,
β
< q  
,
,
,
,
H :  
{
T
Đ
α
)
β
)
đ
i
k
,
,
,
r =  
(
ra  
×
(
y × g  
mod p  
ra = g mod p  
b
e) M  
c
c
c
ơ
sở  
LD 15.01B  
độ an toàn xét theo  
t c a lượ đồ LD-  
eb =  
α
1 ×(e −  
β
)modq  
,
,
e = H(r || M) modq  
b
T
l
c
c  
,
.
Nếu:  
kh  
n
ă
c
s =  
(
α
× sa +  
β mod q  
)
sa =  
u = (g)s ×  
Th t v y, t  
u = gs × ye mod p  
(
k + x × eb  
)
mod q  
e mod p  
c
i  
và  
thì: v = e .  
(
y
)
v = H  
(
u || M mod q  
)
r
nă  
m
c  
(3.4a), (3.5a), (3.6a) và (3.7a) ta có:  
(2.10b)  
= g(  
) × y(α  
) mod p  
α
.sa  
+
β
.eb +β  
c
.(k+x.eb )+  
β
α.eb +β  
= gα  
× gx.(  
) mod p  
(3.9a)  
L
ượ  
c
n tlược đồ  
α
x.eb .α  
= gk. × g x.e . × gβ × g  
× gx. mod p  
α
β
b
c
ơ
sở  
sử  
α
β
khai được hình thành theo Thu  
và B là người t o ra b  
và ki m tra ch c  
a) Thu t toán ký  
Thut toán 3.1a  
c
cơ sở  
=
=
(
(
ra  
gk  
)
×
(
gx  
)
× gβ mod p  
đ
α
)
× yβ × gβ mod p  
c
ư
sau:  
α
=
(ra )  
×(y × g)β mod p  
:
T
T
(2.1a), (3.1a) và (3.9a) ta có:  
Input: p, q, g, x, y,  
Output: (e,s).  
α,  
β, k , M.  
β
α
u = g−  
×
(
g x  
)
×
(
g k  
)
mod p  
β
(3.10a)  
ra gk mod p  
α
)
β
=
(
ra  
× g× yβ mod p  
[1].  
(3.1a)  
(3.2a)  
(3.3a)  
(3.4a)  
(3.5a)  
(3.6a)  
α
)
β
[2].  
[3].  
[4].  
[5].  
[6].  
(3.2) và (3.10), suy ra:  
rb ←  
(
ra  
×
(
y × g  
)
mod p  
u = r  
(3.11a)  
e H(r || M )modq  
b
b
eb α 1 ×(e −  
sa k + x × eb  
s ← × sa + modq  
β
)modq  
Thay (3.11a) vào (3.8a) ta có:  
v = H u || M mod q = H(r || M )mod q  
(3.2a) và (3.12a), suy ra: v = e  
(3.12a)  
u c n chng  
(
)
b
(
)
mod q  
T
.
Đ
ây là  
đ
i
(
α
β
)
minh.  
[7]. return (e,s)  
Chú thích:  
d) M  
c
độ an toàn c  
ương t nh  
ký mù m  
a lượ  
i lượ  
đề xu  
c đồ LD 15.02A  
T
ư
v
c
đồ  
t c  
c
ơ
sở  
, mứ  
c
đ
độ an toàn c  
ánh giá qua các kh  
a lượ  
c
- Các bước [1], [5] do người ký A th  
c hin.  
đồ ch  
i
ũ
ng đượ  
c
- Các bước [2], [3], [4], [6] và [7] do người có b  
n ký B th c hi n.  
- Tham s k do A l a ch  
- Tham số α do B l a ch  
- {x,y} là c p khóa bí m t/công khai c  
t toán ki m tra  
n tin  
nă  
ng:  
c
-
-
Ch  
Ch  
ng t  
ng gi  
i m  
n công làm l  
ký.  
đồ ch  
khóa m  
t.  
n th  
a mãn: 1< k < q.  
a mãn: 1 <  
a A.  
mạ  
o ch  
,
β
n th  
α, β < q.  
Ngoài ra, v  
a nó còn đượ  
ngu n g c b  
ượ đồ đề xu  
ký A hay b t k  
t lượ  
c
ký s  
mù, m  
c
độ an toàn  
n công làm l  
đặt ra đối v  
được ký, thì ngườ  
ng nào khác c  
c
c
đ
ánh giá qua kh  
n
ă
ng ch  
ng t  
b) Thu  
n tin sau khi được ký. Yêu c  
t là b n tin M sau khi  
đối tượng s  
u
i
i
l
c
mớ  
i
m
đã  
Thut toán 3.2a  
Input: p, q, g, y, M – b  
ký c a A.  
:
t
d
ũ
ng hoàn  
n tin cn thm tra, (e,s) – chữ  
Hi Tho Quc Gia 2015 về Đin t, Truyn Thông và Công NghThông Tin (ECIT 2015)  
toàn không thbiết được bn tin M được to ra từ đối tượng  
B.  
dng bn tin đã ký M cùng thành phn thnht e ca chữ  
ký, A vn có thxác định được danh tính ca B bng  
Thut toán 3.4a như sau:  
Khnăng chng tn công làm lkhóa mt và gimo chữ  
ký  
Thut toán 3.4a:  
Mc độ an toàn ca lược đồ chký mù mi đề xut được  
thiết lp da trên mc độ an toàn ca lược đồ cơ s. Xét theo  
khnăng chng tn công làm lkhóa mt và khnăng chng  
gimo chký, có ththy rng mc độ an toàn ca 2 lược  
đồ này là tương đương như nhau.  
Input: {(rai,IDBi)| i=1,2,…N}, (M,e), α, β.  
Output: IDBi.  
[1].  
, i = 0  
m H (M )  
[2]. select:  
(
rai  
,
IDBi  
)
Khnăng chng tn công làm lngun gc ca bn tin  
được ký  
α
)
β
[3].  
[4].  
r *←  
(
rai  
×
(
g × y  
)
mod p  
bi  
eH(r *|| M)modq  
Thut toán ký ca lược đồ mi đề xut cho thy, nếu mi  
ln ký bng vic lưu trcác tham s{sa,ra,eb,k} cùng vi định  
danh ca người yêu cu ký (IDB), người ký A có thxác định  
được mi quan hgia {M,(e,s)} vi IDB, nghĩa là tbn tin  
M và chký tương ng (e,s) có thxác định được danh tính  
ca người yêu cu ký B, vi điu kin người ký A biết được  
các tham s(α,β). Tht vy, khi biết (α,β) người ký A hoàn  
toàn có thxác định được IDB bng Thut toán 3.3a như sau:  
Thut toán 3.3a:  
bi  
[5]. if ee then  
[5.1]. i i +  
[5.2]. goto [2];  
[6]. return IDBi  
1
;
Trường hp chlưu gicác tham s(ra,,IDB) và sử  
dng thành phn thnht e ca chký, A vn có thxác  
định được danh tính ca B bng Thut toán 3.5a như sau:  
Input: {(rai,ebi,sai,ki,IDBi)| i=0,1,2,…N}, M, (e,s), α, β.  
Output: IDBi.  
Thut toán 3.5a:  
Input: {(ebi,IDBi)| i=0,1,2,…N}, e, α, β.  
Output: IDBi.  
[1].  
, i = 0  
m H (M )  
[2]. select: (rai ,ebi , sai ,ki , IDBi )  
[1]. i = 0  
α
β
[2]. select:  
(
ebi  
,
IDBi  
)
[3].  
[4].  
r *←  
eH(r *|| M)modq  
(
rai  
)
×
(
g × y  
)
mod p  
bi  
ebi α 1 ×(e −  
β
)modq  
[3].  
bi  
[4]. if ebi ebi then  
[5]. if ee then  
[4.1]. i i +1;  
[5.1]. i i +1  
;
[4.2]. goto [2];  
[5]. return IDBi  
[5.2]. goto [2];  
ebi α 1 ×(e −  
β
)modq  
[6].  
Trường hp chlưu gicác tham s(sa,,eb,k,IDB) và  
sdng thành phn thhai s ca chký, A xác định được  
danh tính ca B bng Thut toán 3.6a như sau:  
[7]. if ebi ebi then  
[7.1]. i i +  
[7.2]. goto [2];  
[8].  
1
;
Thut toán 3.6a:  
Input: {(ebi,sai,ki,IDBi)| i=0,1,2,…N}, s, α, β.  
Output: IDBi.  
[1]. i = 0  
sai ←  
[9]. if sai sai then  
[9.1]. i i +  
(
ki + x×ebi mod q  
)
[2]. select: (ebi , sai , ki , IDBi )  
1
;
sai  
(ki + x×ebi )mod q  
[9.2]. goto [2];  
[10].  
[3].  
s←  
[11]. if ss then  
[11.1]. i i +  
(
α
× sai +  
β
)
mod q  
[4]. if sai sai then  
[4.1]. i i +  
1
;
[4.2]. goto [2];  
[5]. return IDBi  
1
;
[11.2]. goto [2];  
[12]. return IDBi  
Trường hp chlưu gicác tham s(sa,,IDB) và sdng  
thành phn thhai s ca chký, A xác định được danh  
tính ca B bng Thut toán 3.7a như sau:  
Thut toán 3.3a trên đây có thxác định được danh  
tính ca B vi độ chính xác cao, nhưng đòi hi phi lưu  
ginhiu tham s(sa,ra,eb,k,IDB) và mt nhiu thi gian  
tính toán. Tuy nhiên, tthut toán này có thchra sau  
đây mt sthut toán tn công khác đòi hi vic lưu giữ  
tham svà thi gian tính toán ít hơn mà vn có thxác  
định được danh tính ca người yêu cu ký bn tin B.  
Thut toán 3.7a:  
Input: {(sai,IDBi)| i=0,1,2,…N}, e, α, β.  
Output: IDBi.  
[1]. i = 0  
[2]. select: (sai , IDBi )  
Trường hp chlưu gicác tham s(ra,,IDB) và sử  
Hi Tho Quc Gia 2015 về Đin t, Truyn Thông và Công NghThông Tin (ECIT 2015)  
b). Thu t toán ki m tra  
s  
[4]. if ss then  
[4.1]. i i +  
(
α
× sai +  
β )modq  
[3].  
Thut toán 3.2b  
Input: p, q, g, y, M – b  
ch ký c a A.  
:
n tin c  
n thẩ  
m tra, (e,s) –  
1
;
[4.2]. goto [1];  
[5]. return IDBi  
Output: (e,s) = true  
/
.
false  
u ge × ys mod p  
[1].  
(3.7b)  
(3.8b)  
Nhn xét:  
[2].  
v H  
[3]. if  
else  
Chú thích:  
- N u k t qu  
được công nh  
th m tra M và danh tính c  
định.  
- N u k  
ho c n  
c) Tính úng đắn c  
u c n ch ng minh ở đây là: cho p, q là 2 s  
a mãn u ki  
(
u || M  
)
)
modq  
Các thut toán t3.3a đến 3.7a đều chung đặc đim là có  
thxác định được danh tính ca người yêu cu ký B nếu biết  
được các tham sbí mt (α,β) do B to ra. Nói cách khác, mc  
độ an toàn ca lược đồ mi đề xut xét theo khnăng gibí  
mt ngun gc ca bn tin phthuc vào mc độ khó ca vic  
tìm được các tham sbí mt (α,β). Tthut toán ký ca lược  
đồ mi đề xut cho thy ti thi đim ký A chbiết được các  
tham sra, eb, sa. Điu đó có nghĩa là để tính được (α,β), A cn  
phi gii (3.13a):  
(
v = e  
then {return true }  
false  
}
{
return  
ế
ế
tr  
về  
true thì tính h  
n, do ó tính toàn v  
a người ký (A) được kh  
p l  
n c  
c
a ch  
ký (e,s)  
n tin c  
ng  
đ
a b  
n  
ế
ế
t qu  
i dung b  
a lược  
tr  
v
false thì ch  
n tin M ã b  
đồ LD 15.02B  
ký (e,s) là gi  
mo,  
β
)
đ
sa đổi.  
eb =  
α
1 ×(H((r )α ×  
(
g × y  
mod p || M ) mod q −  
β
) mod q  
(3.13a)  
a
đ
Đ
i
nguyên tố  
q | (p 1) g = h( p1)/ q mod p  
Tuy nhiên, tcác kết qunghiên cu đã được công bcó  
ththy rng (3.13a) là mt dng bài toán khó chưa có li gii  
nếu các tham sp, q được chn đủ ln để phương pháp vét  
cn là không khthi trong các ng dng thc tế.  
th  
đ
i
n
,
v
i:  
,
0,1 ∗  
}
a Zt  
1 < x,k < q  
q < t < p  
,
,
vớ  
i:  
H :  
{
1< h < p  
1  
y = g x mod p  
1 <  
α
,
β
< q  
ra = gk mod p  
,
,
,
,
Mt khác, do mi bước thc hin ca thut toán ký (Thut  
toán 3.1) đều sdng 2 tham sbí mt (α,β) do B to ra nên  
các dng tn công làm lngun gc bn tin như các thut toán  
đã chra Mc 2 (Thut toán 1.1, 1.2, 1.3 1.4) là không  
khthi đối vi lược đồ mi đề xut.  
α
.
β
,
rb ←  
eb =α 1  
s = α ×  
v = H u || M  
(
ra  
)
× g β × yα mod p  
e = H(r || M)modq  
b
,
,
(
e +  
β mod q  
)
sa = x ×  
(
k + eb  
)
mod q  
×
(
sa + β  
)
mod q  
u = g e × ys mod p  
.
N
ế
u:  
và  
thì: v = e  
.
(
t v  
)
mod q  
3.2.2. Lược đồ chký smù LD 15.02B  
Lược đồ chký smù, ký hiu LD-15.02B, được phát  
trin tlược đồ cơ sLD-15.01B. Cũng githiết rng A là  
người ký có khóa công khai được hình thành theo Thut toán  
2.1b ca lược đồ cơ sLD 15.01B và B là người to ra bn tin  
M được ký. Khi đó, thut toán ký và kim tra chký ca lược  
đồ được chra như sau:  
Th  
y, t  
(3.4b), (3.5b), (3.6b) và (3.7b) ta có:  
u = ge × ys mod p  
1  
α
α
.eb  
.
α
.(  
β
β
+sa  
+ x.  
= gβ  
= gβ  
× gx  
× gx  
) mod p  
1  
.eb  
.α  
.
(
(k +eb  
)) mod p  
α
x1  
.α  
.
β
α
.x1.(k+eb )  
= gβ × ge . × g  
× gx.  
mod p  
b
a) Thut toán ký  
α.β  
1  
α
α
.eb  
= gβ × ge .  
×
(
α.β  
gx  
)
×
(
gk  
)
× gα mod p  
b
Thut toán 3.1b:  
Input: p, q, g, x, y, α, β, k , M.  
(3.9b)  
1  
α
= gβ ×  
(
gx  
)
×
(
gk  
)
mod p  
Output: (e,s).  
ra gk mod p  
T
(2.1b), (3.1b) và (3.9b) ta có:  
[1].  
[2].  
[3].  
[4].  
[5].  
[6].  
(3.1b)  
(3.2b)  
(3.3b)  
(3.4b)  
(3.5b)  
(3.6b)  
α.β  
1  
ra  
( )  
α × gβ × yα.β mod p  
u = gβ ×  
(
gx  
)
×
(
β
gk  
α mod p  
)
r ←  
b
(3.10b)  
α
.
e H(r || M ) mod q  
eb α 1 × (e +  
β ) mod q  
=
(ra  
)
× gβ × yα mod p  
b
T
(3.2) và (3.10), suy ra: u = r  
(3.11b)  
(3.12b)  
b
sa x ×  
s ←  
(
k + eb  
sa +  
)
mod q  
Thay (3.11) vào (3.8) ta có:  
v = H u || M modq = H(rb || M ) modq  
(3.2b) và (3.12b), suy ra: ây là  
(
)
α
×
(
β
)
mod q  
T
. Đ  
v = e  
đ
i
u c  
n ch  
ng  
[7]. return (e,s)  
Chú thích:  
minh.  
d) M  
ương t  
ngu n g  
c
độ an toàn c  
a lượ  
đồ LD 15.02A, kh  
a b n tin sau khi ký c  
ánh giá qua phân tích kh  
n công nh sau:  
Thut toán 3.3b  
c
đồ LD 15.02B  
ng ch  
a lược  
- Các bước [1], [5] do người ký A th  
- Các bước [2], [3], [4], [6] và [7] do người có b  
B th c hi n.  
- Tham s k do A l  
- Tham số α do B l  
- {x,y} là c p khóa bí m  
c hin.  
T
l
ươ  
c c  
c
nă  
ng t  
đồ LD-15.02B  
ng th c hin  
n công làm  
n tin cn ký  
l
c
m
ũ
ng có thể đượ  
c
đ
n
ă
a ch  
a ch  
t/công khai củ  
n th  
a mãn: 1< k < q.  
a mãn: 1 <  
a A.  
t s thu t t  
ư
,
β
n th  
α, β < q.  
:
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)  
:
Input: {(rai,ebi,sai,ki,IDBi)| i=0,1,2,…N}, M, (e,s), α, β.  
Output: IDBi.  
Thut toán 3.5b  
Input: {(ebi,IDBi)| i=0,1,2,…N}, e,  
Output: IDBi.  
α, β.  
[1].  
, i = 0  
m H (M )  
[1]. i = 0  
[2]. select:  
(rai ,ebi , sai ,ki , IDBi )  
[2]. select  
:
(ebi , IDBi )  
α
.
β
[3].  
r * ←  
( )  
× gβ × yα mod p  
r
ebi α 1 ×(e +  
β
)modq  
bi  
ai  
[3].  
erbi *×H(M)modq  
[4].  
ebi ebi  
[4]. if  
then  
e e  
[5]. if  
then  
[4.1]. i i +1;  
[4.2]. goto [2];  
[5]. return IDBi  
[5.1]. i i +1  
;
[5.2]. goto [2];  
ebi α 1 ×(e +  
β
)modq  
[6].  
Trường h  
ng thành ph  
danh tính c a B b  
Thut toán 3.6b:  
p 3, A ch  
n th  
ng Thu  
l
ư
u gi  
hai  
t toán 3.6b như  
các tham s  
a ch ký, A xác định đượ  
sau:  
(sa,,eb,k,IDB) và  
s
d
s
c
c
[7]. if ebi ebi then  
[7.1]. i i +  
[7.2]. goto [2];  
[8].  
ki + ebi )modq  
1
;
Input: {(ebi,sai,ki,IDBi)| i=0,1,2,…N}, s, α, β.  
Output: IDBi.  
[1]. i = 0  
sai x ×  
[9]. if sai sai then  
[9.1]. i i +  
(
[2]. select  
:
(ebi , sai ,ki , IDBi )  
ki + ebi mod q  
1
;
sai x ×  
(
)
[3].  
[9.2]. goto [2];  
[4]. if sai sai then  
s  
[11]. if ss then  
[11.1]. i i +  
α
×
(
sai +  
β mod q  
)
[10].  
[4.1]. i i +  
1
;
[4.2]. goto [2];  
[5]. return IDBi  
1
;
[11.2]. goto [2];  
[12]. return IDBi  
Trường h  
ng thành ph  
tính c a B b ng Thu  
Thut toán 3.7b  
p 4, A ch  
n th hai  
t toán 3.7b nh  
s
l
ư
u giữ  
các tham s  
(
sa,,IDB) và s  
d
c
a ch  
ư
ký, A xác định được danh  
sau:  
Thut toán 3.3b trên đây có thxác định được danh tính  
ca B vi độ chính xác cao, nhưng đòi hi phi lưu ginhiu  
tham s(sa,ra,eb,k,IDB) và mt nhiu thi gian tính toán. Tuy  
nhiên, tthut toán này có thchra sau đây mt sthut toán  
tn công tương ng vi các trường hp đòi hi vic lưu giữ  
tham svà thi gian tính toán ít hơn mà vn có thxác định  
được danh tính ca người yêu cu ký bn tin B.  
:
Input: {(sai,IDBi)| i=0,1,2,…N}, e,  
Output: IDBi.  
[1]. i = 0  
α, β.  
[2]. select: (sai , IDBi )  
s  
α
×
(
sai +  
β modq  
)
[3].  
Trường hp 1, A chlưu gicác tham s(ra,,IDB) và sử  
dng bn tin đã ký M cùng thành phn thnht e ca chký,  
A vn có thxác định được danh tính ca B bng Thut toán  
3.4b như sau:  
[4]. if ss then  
[4.1].  
i
i +1;  
[4.2]. goto [1];  
[5]. return IDBi  
Thut toán 3.4b:  
Input: {(rai,IDBi)| i=1,2,…N}, (M,e), α, β.  
Output: IDBi.  
Nh  
n xét  
:
[1].  
, i = 0  
m H (M )  
Các Thu  
t toán 3.3b, 34b, 3.5b, 3.6b 3.7b trên  
xác định được danh tính c a B n u bi  
bí m t ( ) do B t o ra. Nh y, m độ an toàn  
đồ LD 15.02B xét theo kh ng gi bí m t ngu  
a b n tin ph thu c vào m độ khó c a vi c tìm đượ  
các tham s bí m t ( thu t toán ký c a lượ đồ  
LD 15.02B cho th y A ch được các tham s ra, eb, sa t  
th m ký. Nên để có th ), A c n ph i gi  
đ
ây cho  
[2]. select:  
phép A có th  
các tham s  
a lượ  
c c  
ế
c  
ế
t
đượ  
c
(rai , IDBi )  
( )  
× gβ × yα mod p  
erbi *×H(M)modq  
α
,
β
ư
ă
vậ  
α
.
β
[3].  
r * ←  
r
bi  
ai  
c
g
c
n
n  
c
[4].  
c
α
,
β
). T  
c
[5]. if ee then  
bi  
ế
t
i  
i
đ
i
tính (  
α
,
β
i
được:  
[5.1]. i i +  
[5.2]. goto [2];  
[6]. return IDBi  
1
;
eb = α 1 × (H(((ra )α × g β × yα mod p) || M ) mod q +  
β
) mod q  
.
β
(3.13b)  
ng bài toán khó  
p, q được ch đủ để  
Trường h  
ng thành ph  
được danh tính c  
p 2, A ch  
n th nh t e c  
a B b  
l
ư
u gi  
các tham s  
ký, A v n có th  
sau:  
(ra,,IDB) và s  
Có th  
th  
i gi  
y r  
ng, (3.13b) c  
ũng là mt dạ  
d
a ch  
xác định  
ch  
ư
a có l  
i n  
ế
u các tham s  
n
ln  
ng Thu  
t toán 3.5b nh  
ư
H
i Thả  
o Quố  
c Gia 2015 về Đ  
i
n t , Truy  
n Thông và Công NghThông Tin (ECIT 2015)  
[5] D. Chaum, B. den Boer, E. van Heyst, S. Mjolsnes, A. Steenbeek,  
Efficient Offline Electronic Checks”, Advances in Cryptology,  
Eurocrypt’89, LNCS 434, Springer Verlag, pp. 294-301.  
phương pháp “vét c  
th c t . M t khác, do m  
Thu t toán 3.1b  
ra nên các d  
thu t toán  
là không kh  
n” là không kh  
thi trong các ng dng  
ế
d
i bước th  
c hi n c a thu  
ng 2 tham s bí m  
ngu  
c b  
β
t toán ký  
) do B t  
n tin nh các  
(
)
đều s  
t (  
α
,
o  
[6] B. C. Rivest R., Shamir A., Adleman L. (1978), “A Method for  
Obtaining Digital Signatures and Public Key Cryptosystems”,  
Communications of the ACM, Vol. 21, No. 2, pp. 120 – 126.  
ã ch  
ng t  
ra  
n công làm l  
c 2 (Thu  
n g  
ư
đ
M
t toán 1.1, 1.2, 1.3 1.4  
đề xu t.  
)
[7] K. Nyberg, R. A. Rueppel, A New Signature Scheme Base on the DSA  
Giving Message Recovery, 1st ACM conference on Computer and  
Communications Security, November 3 – 5, Fairfax, Virginia.  
thi đối v  
i lượ  
c
đồ  
m
i
IV.  
K
T LU  
u c a m  
t 2 lượ  
đồ ch ký c  
a bài toán logarit r i r c, 2 lượ  
độ an toàn cao h n các lượ đồ đã bi t v  
n công làm l ngu n g c c a b n tin được ký.  
u t quan tr ng cho phép lượ  
thi trong các ng d ng th c t  
N  
[8] Jan L. Camenisch, Jean-Marc Piveteau, Markus A. Stadler, Blind  
Signatures Base on Discrete Logarithm Problem, Swiss KWF  
Foundation, grant no. 2724.1.  
T
vi  
được công b  
được phát tri n t  
trên tính khó c  
c phân tích  
đ
i
m yế  
t số  
l
ượ  
c
đồ ch  
ký số  
mù  
đ
ã
, bài báo đề xu  
c
đồ ch  
ký smù  
[9] Nikolay A. Moldovyan, Blind Collective Signature Protocol, Computer  
mớ  
i
các lượ  
c
ơ
s
c
xây d  
đồ  
kh  
ng d  
i này có  
ng ch ng  
ây là m  
t có tính kh  
a  
Science Journal of Moldova, vol.19, no.1(55), 2011.  
m
[10] National Institute of Standards and Technology, NIST FIPS PUB 186-3.  
mứ  
c
ơ
c
ế
nă  
Digital Signature Standard, U.S. Department of Commerce, 1994.  
t
Đ
t
[11] GOST  
R
34.10-94. Russian Federation Standard. Information  
yế  
c
đồ  
m
i
đề xu  
Technology. Cryptographic data Security. Produce and check  
procedures of Electronic Digital Signature based on Asymmetric  
Cryptographic Algorithm. Government Committee of the Russia for  
Standards, 1994 (in Russian).  
ự ế.  
TÀI LI  
U THAM KH  
O
[12] Kharin Yu.S., Bernik V.I., Matveev G.V., Aguievich S.V. Mathematic  
and computer foundations of cryptology, Novoe znanie, Minsk, 2003.  
381 p. (in Russian).  
[1] D. Chaum, Blind Signature Systems, Advances in Cryptology, Crypto’  
83, Plenum Press, pp. 153.  
[13] C. P. Schnorr, “Efficient signature generation by smart cards”, Journal  
[2] D. Chaum, A. Fiat, M. Naor, “Untraceable Electronic Cash”, Advances  
of Cryptology, vol. 4, pp. 161 – 174, 1991.  
in Cryptology,Crypto’ 88, LNCS 403, Springer Verlag, pp. 319-327.  
[14] 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.  
[3] D. Chaum, “Privacy Protected Payment”, SMART CARD 2000, Elsevier  
Science Publishers B.V., 1989, pp. 69-93.  
[4] N. Ferguson, “Single Term Off-line Coins”, Advances in Cryptology,  
Eurocrypt’93, LNCS 765, Springer Verlag, pp. 318-328.  
pdf 9 trang baolam 10/05/2022 6880
Bạn đang xem tài liệu "Phát triển lược đồ chữ ký số mù", để 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:

  • pdfphat_trien_luoc_do_chu_ky_so_mu.pdf