1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Kyyeuhoinghi REV-ECIT 2015 - 21

7 5 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 7
Dung lượng 639,49 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

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

Trang 1

NguyӉn TiӅn Giang 1, Nguy Ӊn Ĉӭc Thөy2, Lê Ĉình Sѫn 3, L ѭu Hӗng DNJng3

1 Cөc Công NghӋ Thông Tin – Bӝ QP, 2 Trѭӡng Cao ÿҷng Kinh tӃ - Kӻ thuұt TP Hӗ Chí Minh, 3 Hӑc viӋn Kӻ thuұt Quân sӵ Email: ntgiang77@gmail.com, thuyphulam2013@gmail.com, ledinhson@gmail.com, luuhongdung@gmail.com

Tóm t̷t— Bài báo ÿӅ xuҩt xây dӵng 2 lѭӧc ÿӗ chӳ ký sӕ mù tӯ

vi Ӌc phát triӇn lѭӧc ÿӗ chӳ ký sӕ trên cѫ sӣ bài toán logarithm

rӡi rҥc Các lѭӧc ÿӗ mӟi ÿӅ xuҩt ӣ ÿây có mӭc ÿӝ an toàn cao

h ѫn vӅ khҧ năng chӕng tҩn công làm lӝ nguӗn gӕc cӫa bҧn tin

ÿѭӧc ký so vӟi mӝt sӕ lѭӧc ÿӗ ÿã biӃt trѭӟc ÿó trong thӵc tӃ

T ͳ khóa- Digital Signature, Blind Signature, Digital Signature

Scheme, Blind Signature Scheme

I ĈҺTVҨNĈӄ Khái niӋm chӳ ký sӕ mù ÿѭӧc ÿӅ xuҩt bӣi D Chaum vào

năm 1983 [1], ÿây là mӝt loҥi chӳ ký sӕ ÿѭӧc sӱ dөng ÿӇ xác

thӵc tính toàn vҽn cӫa mӝt bҧn tin ÿiӋn tӱ và danh tính cӫa

ngѭӡi ký, nhѭng không cho phép xác thӵc nguӗn gӕc thӵc sӵ

cӫa bҧn tin ÿѭӧc ký Nói cách khác, loҥi chӳ ký này cho phép

ҭn danh ngѭӡi tҥo ra bҧn tin ÿѭӧc ký Trong [2-4] ÿã chӍ ra

ӭng dөng cӫa loҥi chӳ ký này khi cҫn bҧo vӋ tính riêng tѭ cӫa

các khách hàng trong các hӋ thӕng thanh toán ÿiӋn tӱ hay vҩn

ÿӅ ҭn danh cӫa cӱ tri trong viӋc tә chӭc bҫu cӱ trӵc tuyӃn [5]

Mӝt ÿiӇm cҫn chú ý ӣ ÿây là, vӟi các loҥi chӳ ký sӕ thông

thѭӡng thì ngѭӡi ký cNJng chính là ngѭӡi tҥo ra bҧn tin ÿѭӧc

ký, còn vӟi chӳ ký sӕ mù thì ngѭӡi ký và ngѭӡi tҥo ra bҧn tin

ÿѭӧc ký là 2 ÿӕi tѭӧng hoàn toàn khác nhau Ĉây là tính chҩt

ÿһc trѭng cӫa chӳ ký sӕ mù và cNJng là mӝt tiêu chí quan trӑng

ÿӇ ÿánh giá mӭc ÿӝ an toàn cӫa loҥi chӳ ký sӕ này

Trong [1-5] các tác giҧ ÿã ÿӅ xuҩt mӝt sӕ lѭӧc ÿӗ chӳ ký sӕ

mù ӭng dөng khi cҫn bҧo vӋ tính riêng tѭ cӫa các khách hàng

trong các hӋ thӕng thanh toán ÿiӋn tӱ hay vҩn ÿӅ ҭn danh cӫa

cӱ tri trong viӋc tә chӭc bҫu cӱ trӵc tuyӃn Tuy nhiên, ÿiӇm

yӃu chung cӫa các lѭӧc ÿӗ trên là không có khҧ năng chӕng lҥi

kiӇu tҩn công làm lӝ nguӗn gӕc cӫa bҧn tin ÿѭӧc ký, vì thӃ khҧ

năng ӭng dөng cӫa các lѭӧc ÿӗ này trong thӵc tӃ là rҩt hҥn chӃ

Nӝi dung bài báo tұp trung phân tích ÿiӇm yӃu có thӇ tҩn công

làm lӝ nguӗn gӕc bҧn tin ÿѭӧc ký cӫa mӝt sӕ lѭӧc ÿӗ chӳ ký sӕ

mù ÿã ÿѭӧc công bӕ, tӯ ÿó ÿӅ xuҩt xây dӵng mӝt lѭӧc ÿӗ mӟi

có ÿӝ an toàn cao hѫn vӅ khҧ năng giӳ bí mұt nguӗn gӕc cӫa

bҧn tin ÿѭӧc ký có thӇ ÿáp ӭng các yêu cҫu mà thӵc tӃ ÿһt ra

II TҨNCÔNGLÀMLӜNGUӖNGӔCBҦNTINĈӔI

VӞIMӜTSӔLѬӦCĈӖCHӲKÝSӔMÙ

2.1 Tҩn công lѭӧc ÿӗ chӳ ký sӕ mù RSA

2.1.1 Lѭӧc ÿӗ chӳ ký sӕ mù RSA

Lѭӧc ÿӗ chӳ ký sӕ mù RSA ÿѭӧc phát triӇn tӯ lѭӧc ÿӗ chӳ

ký sӕ RSA [6] Lѭӧc ÿӗ chӳ ký sӕ mù RSA có thӇ mô tҧ nhѭ

sau: Giҧ sӱ A là ngѭӡi ký có khóa bí mұt (d), công khai (n,e)

ÿѭӧc hình thành theo lѭӧc ÿӗ chӳ ký RSA B là ngѭӡi tҥo ra

bҧn tin M và yêu cҫu A ký lên M (ngѭӡi yêu cҫu ký) ĈӇ che dҩu danh tính cӫa B sau khi bҧn tin M ÿã ÿѭӧc ký, thӫ tөc hình thành chӳ ký (“ký mù”) ÿѭӧc thӵc hiӋn qua các bѭӟc nhѭ sau:

B ˱ͣc 1: B làm “mù” bҧn tin M bҵng cách chӑn ngүu nhiên

mӝt giá trӏ k thӓa mãn: 1<k < n và k nguyên tӕ cùng nhau vӟi

n , sau ÿó B tính: m'=m×k emodn, ӣ ÿây: m = H (M) là giá trӏ

ÿҥi diӋn cӫa bҧn tin cҫn ký M và H(.) là hàm băm kháng va

chҥm B gӱi bҧn tin ÿã ÿѭӧc làm mù (m’) cho A

B ˱ͣc 2: A sӁ ký lên m’ bҵng thuұt toán ký cӫa lѭӧc ÿӗ

RSA: s' =(m')dmodn rӗi gӱi lҥi s’ cho B

B˱ͣc 3: B “xóa mù” s’ và nhұn ÿѭӧc chӳ ký s nhѭ sau:

n k s

s ' − 1mod

×

ViӋc kiӇm tra tính hӧp lӋ cӫa s và do ÿó là tính toàn vҽn

cӫa M ÿѭӧc thӵc hiӋn nhѭ ӣ lѭӧc ÿӗ RSA Vҩn ÿӅ ӣ ÿây là, mӝt ÿӕi tѭӧng bҩt kǤ có thӇ kiӇm tra tính hӧp lӋ cӫa s, tӯ ÿó

khҷng ÿӏnh tính toàn vҽn cӫa M và danh tính ngѭӡi ký bҵng thuұt toán kiӇm tra RSA, nhѭng không thӇ xác ÿӏnh ÿѭӧc bҧn tin M là do ai tҥo ra Nghƭa là danh tính cӫa B ÿã ÿѭӧc giҩu kín

2.1.2 Tҩn công làm lӝ nguӗn gӕc bҧn tin ÿѭӧc ký Vӟi lѭӧc ÿӗ chӳ ký sӕ mù RSA nhѭ ÿã mô tҧ ӣ trên, viӋc xác ÿӏnh danh tính cӫa ngѭӡi tҥo ra bҧn tin ÿѭӧc ký M là có thӇ thӵc hiӋn ÿѭӧc Bӣi vì tҥi thӡi ÿiӇm ký, ngѭӡi ký (A) chӍ không biӃt nӝi dung cӫa M, nhѭng danh tính cӫa B thì A hoàn toàn biӃt rõ, ÿiӅu này là hiӇn nhiên vì A chӍ ký khi biӃt rõ B là

ai Giҧ sӱ danh tính cӫa B ÿѭӧc ký hiӋu là IDB, ÿӇ xác ÿӏnh danh tính cӫa ngѭӡi yêu cҫu ký tӯ bҧn tin M và chӳ ký s tѭѫng ӭng sau thӡi ÿiӇm ký (khi M và s ÿã ÿѭӧc công khai), ӣ mӛi lҫn ký chӍ cҫn A lѭu trӳ giá trӏ s’ và IDB trong mӝt cѫ sӣ dӳ liӋu Tӯ ÿó, viӋc xác ÿӏnh danh tính cӫa ngѭӡi yêu cҫu ký - IDB tӯ bҧn tin ÿѭӧc ký M và chӳ ký s là hoàn toàn có thӇ thӵc hiӋn ÿѭӧc bҵng mӝt thuұt toán nhѭ sau:

Thuұt toán 1.1:

Input: (M,s), {(si’, IDBi)| i=0,1,2,…N}

Output: IDBi

[1] m ← H (M), i = 0

[2] select: (s i ,'ID Bi) [3] k s m d n

×

[4] if gcd( k∗, n ) ≠ 1 then

[4.1] i ← i+1

[4.2] goto [2]

[5] ss i' (k∗)− 1modn

×

[6] if (s ≠s) then



ISBN: 978-604-67-0635-9

Trang 2

[6.1] i ← i+1

[6.2] goto [2]

[7] return IDBi

Nh ̵n xét:

Tӯ Thu̵t toán 1.1 cho thҩy, nӃu N không ÿӫ lӟn thì viӋc

xác ÿӏnh ÿѭӧc danh tính cӫa ngѭӡi yêu cҫu ký (ngѭӡi tҥo ra

bҧn tin ÿѭӧc ký) là hoàn toàn có thӇ thӵc hiӋn ÿѭӧc Nói cách

khác, lѭӧc ÿӗ chӳ ký sӕ mù RSA là không an toàn nӃu sӕ

lѭӧng bҧn tin ÿѭӧc ký không ÿӫ lӟn

2.2 Tҩn công lѭӧc ÿӗ chӳ ký sӕ mù DSA

2.2.1 Lѭӧc ÿӗ chӳ ký sӕ mù DSA

Tӯ lѭӧc ÿӗ chӳ ký sӕ DSA [8], nhóm tác giҧ Jan L

Camenisch, Jean-Marc Piveteau, Markus A Stadler ÿӅ xuҩt

mӝt lѭӧc ÿӗ chӳ ký sӕ mù [8] vӟi thӫ tөc hình thành tham sӕ

hӋ thӕng bao gӗm mӝt sӕ nguyên tӕ p, mӝt sӕ nguyên tӕ q là

ѭӟc cӫa (p-1) và phҫn tӱ sinh *

p

Z

g ∈ có bұc là q Ngѭӡi ký có khóa bí mұt x ∈ Z q và khóa công khai tѭѫng ӭng là

p

g

y= xmod Thӫ tөc hình thành chӳ ký “mù” bao gӗm các

bѭӟc nhѭ sau:

1 a) Ngѭӡi ký (A) chӑn mӝt giá trӏ k ∈ Z q và tính

p g

R' = kmod

b) A kiӇm tra nӃu gcd(R,'q)≠1 thì thӵc hiӋn lҥi bѭӟc

a) Ngѭӧc lҥi, A gӱi R cho ngѭӡi yêu cҫu ký (B)

2 a) Ngѭӡi yêu cҫu ký B chӑn 2 giá trӏ α,β∈Z q và tính

( )R g p

R 'α βmod

×

b) B kiӇm tra nӃu gcd(R,'q)=1 thì tính tiӃp giá trӏ

q R R m

×

×

×

=α rӗi gӱi m’ cho A NӃu ÿiӅu

kiӋn chӍ ra không thӓa mãn, B thӵc hiӋn lҥi bѭӟc a)

3 Ngѭӡi ký A tính giá trӏ s'=(k×m'+x×R')modq rӗi

gӱi cho B

4 Ngѭӡi yêu cҫu ký B tính các thành phҫn (r,s) cӫa chӳ

ký:r=Rmodq, s (s' R ( )R' 1 m)modq

× +

×

×

Thӫ tөc kiӇm tra tính hӧp lӋ cӫa chӳ ký hoàn toàn tѭѫng

tӵ nhѭ ӣ lѭӧc ÿӗ chӳ ký DSA

2.2.2 Tҩn công làm lӝ nguӗn gӕc bҧn tin ÿѭӧc ký

ĈӇ tҩn công làm lӝ nguӗn gӕc bҧn tin ÿѭӧc ký M, ngѭӡi

ký A cҫn lѭu trӳ giá trӏ các tham sӕ {R’,m’,s’} và IDB ӣ mӛi

lҫn ký A có thӇ xác ÿӏnh ÿѭӧc danh tính cӫa B bҵng Thu̵t

toán 1.2 nhѭ sau:

Thuұt toán 1.2:

Input: (M,r,s), {(Ri’, mi’,si’,IDBi)| i=0,1,2,…N}

Output: IDBi

[1] m ← H (M), i = 0

[2] select: ( ,' ,' ,' )

Bi i i

i m s ID R

[3] m i' m− 1 r ( )R'− 1modq

×

×

×

α

[4] m− 1 (s s i' r ( )R'− 1)modq

×

×

×

β

[5] R (R i')α gβmodp

×

[6] r∗←Rmodq

[7] if (r ≠r) then

[7.1] i ← i+1

[7.2] goto [2]

[8] return IDBi

Nh ̵n xét:

Tѭѫng tӵ nhѭ vӟi lѭӧc ÿӗ chӳ ký mù RSA, tӯ Thu̵t toán 1.2 cho thҩy, nӃu N không ÿӫ lӟn thì viӋc xác ÿӏnh ÿѭӧc danh tính cӫa ngѭӡi yêu cҫu ký (ngѭӡi tҥo ra bҧn tin ÿѭӧc ký) là hoàn toàn có thӇ thӵc hiӋn ÿѭӧc Nói cách khác, lѭӧc ÿӗ chӳ

ký sӕ mù DSA cNJng sӁ không an toàn xét theo khía cҥnh

chӕng tҩn công làm lӝ nguӗn gӕc bҧn tin nӃu sӕ lѭӧng bҧn tin ÿѭӧc ký không ÿӫ lӟn

2.3 Tҩn công lѭӧc ÿӗ chӳ ký sӕ mù Nyberg-Rueppel

2.3.1 Lѭӧc ÿӗ chӳ ký sӕ Nyberg-Rueppel Tham sӕ hӋ thӕng cӫa lѭӧc ÿӗ chӳ ký sӕ do K Nyberg và

R A Rueppel ÿӅ xuҩt [7]ÿѭӧc lӵa chӑn tѭѫng tӵ nhѭ ӣ lѭӧc

ÿӗ DSA ĈӇ ký lên mӝt bҧn tin M có giá trӏ ÿҥi diӋn m ∈ Z p,

ngѭӡi ký chӑn ngүu nhiên mӝt giá trӏ k ∈ Z q và tính:

p g m

r= × kmod , s=k+x.rmodq

Chӳ ký lên bҧn tin M ӣ ÿây là cһp (r,s) Chӳ ký ÿѭӧc coi là

hӧp lӋ nӃu thӓa mãn phѭѫng trình kiӇm tra:

p r g y

m= −s× r× mod

Ӣ ÿây m là giá trӏ ÿҥi diӋn cӫa bҧn tin cҫn thҭm tra M:

)

(M H

m = , vӟi H(.) là hàm băm.

2.3.2 Lѭӧc ÿӗ chӳ ký sӕ mù Nyberg-Rueppel

CNJng nhóm tác giҧ Jan L Camenisch, Jean-Marc Piveteau, Markus A Stadler [8]ÿã ÿӅ xuҩt mӝt lѭӧc ÿӗ chӳ ký

sӕ mù ÿѭӧc phát triӇn tӯ lѭӧc ÿӗ chӳ ký Nyberg-Rueppel vӟi

thӫ tөc hình thành chӳ ký “mù” bao gӗm các bѭӟc nhѭ sau:

1 Ngѭӡi ký (A) chӑn mӝt giá trӏ k ∈ Z q và tính

p g

r' = kmod rӗi gӱi cho ngѭӡi yêu cҫu ký (B)

2 a) B chӑn ngүu nhiên giá trӏ α∈Z q, *

q

Z

β và tính

g m

×

×

×

b) B kiӇm tra nӃu m ∈' Z*q thì gӱi m’ cho ngѭӡi ký A

Ngѭӧc lҥi, B thӵc hiӋn lҥi bѭӟc a)

3 A tính giá trӏ s'=(k+x×m')modq rӗi gӱi cho B

4 B tính s=(s'×β+α)modq và chӳ ký cӫa A lên M là

cһp (r,s)

Thӫ tөc kiӇm tra tính hӧp lӋ cӫa chӳ ký tѭѫng tӵ nhѭ ӣ

lѭӧc ÿӗ chӳ ký Nyberg-Rueppel Nghƭa là: chӳ ký (r,s) ÿѭӧc

coi là hӧp lӋ nӃu thӓa mãn phѭѫng trình kiӇm tra:

p r g y

m= −s× r× mod

Ӣ ÿây m là giá trӏ ÿҥi diӋn cӫa bҧn tin cҫn thҭm tra M.

2.3.3 Tҩn công làm lӝ nguӗn gӕc bҧn tin ÿѭӧc ký

ĈӇ tҩn công làm lӝ nguӗn gӕc bҧn tin ÿѭӧc ký M, ngѭӡi ký

A cҫn lѭu trӳ giá trӏ các tham sӕ {r’,m’,s’} và IDB ӣ mӛi lҫn

ký Tӯ ÿó, A có thӇ xác ÿӏnh ÿѭӧc danh tính cӫa B bҵng thuұt

toán nhѭ sau:

Thuұt toán 1.3:

Input: (M,r,s), {(ri’, mi’,si’, IDBi)| i=0,1,2,…N}

Output: IDBi [1] m ← H (M), i = 0

[2] select: ( ri ,' mi ,' si ,' IDBi) [3] r (m ) q

i'−1mod

×

← β



+ӝL7KҧR4XӕF*LDYӅĈLӋQ7ӱ7UX\ӅQ7K{QJYj&{QJ1JKӋ7K{QJ7LQ (&,7

Trang 3

[4] α←(ss i'×β)modq

[5] r* m gα ( )r i'βmodp

×

×

=

[6] if ( r ≠ * r ) then

[6.1] i ← i + 1

[6.2] goto [2]

[7] return IDBi

Nh ̵n xét:

Tѭѫng tӵ nhѭ 2 thuұt toán ký mù ÿã xét ӣ trên, Thu̵t

toán 1.3 cho thҩy lѭӧc ÿӗ chӳ ký mù Nyberg-Rueppel là

không an toàn nӃu sӕ lѭӧng bҧn tin ÿѭӧc ký không ÿӫ lӟn, khi

ÿó viӋc xác ÿӏnh nguӗn gӕc bҧn tin là có thӇ thӵc hiӋn ÿѭӧc

2.4 Tҩn công lѭӧc ÿӗ chӳ ký sӕ mù Moldovyan

2.4.1 Lѭӧc ÿӗ chӳ ký sӕ mù Moldovyan

Ĉây là lѭӧc ÿӗ chӳ ký sӕ mù ÿѭӧc N.A Modovyvan [9]

ÿӅ xuҩt trên cѫ sӣ phát triӇn tӯ chuҭn chӳ ký sӕ cӫa

Belarusian STB 1176.2-9 [12] Các tham sӕ hӋ thӕng bao gӗm

2 sӕ nguyên tӕ p, q thӓa mãn: q|(p-1) và phҫn tӱ sinh g ∈ Z*p

có bұc là q Ngѭӡi ký có khóa bí mұt x ∈ Zq và khóa công

khai tѭѫng ӭng là y=g xmodp Thӫ tөc hình thành chӳ ký

“mù” bao gӗm các bѭӟc nhѭ sau:

1 Ngѭӡi ký A chӑn ngүu nhiên mӝt giá trӏ k thӓa mãn:

q

k <

<

1 và tính T=g kmodp rӗi gӱi T cho ngѭӡi yêu

cҫu ký B

2 B chӑn ngүu nhiên 2 giá trӏ IJ và ࣅ rӗi tính:

p g y

T

×

×

= , e' F (T'||M)

H

= và e=(e'−τ)modq, ӣ

ÿây: F H (.) là hàm băm và “||” là toán tӱ nӕi 2 xâu bit

Sau ÿó B gӱi e cho A

3 A tính giá trӏ s=(kx×e)modq rӗi gӱi cho B

4 B tính thành phҫn thӭ 2 cӫa chӳ ký:s'=(s+ε)modq

chӳ ký cӫa A lên M là cһp (e,'s')

Thӫ tөc kiӇm tra tính hӧp lӋ cӫa chӳ ký tѭѫng tӵ nhѭ ӣ

STB 1176.2-9, nhѭ sau:

1 KiӇm tra nӃu: 1< 's < q và 0 < ' e < q thì chuyӇn sang

bѭӟc 2 Ngѭӧc lҥi, ( e ,' s ' ) sӁ bӏ tӯ chӕi vӅ tính hӧp lӋ

2 Tính giá trӏ: T g s' y e'modp

×

=

3 Tính giá trӏ: eF H(T∗||M)

=

4 KiӇm tra nӃu: e =e' thì ( e ,' s ' )ÿѭӧc công nhұn hӧp lӋ

Ngѭӧc lҥi, ( e ,' s ' ) sӁ bӏ tӯ chӕi

2.4.2 Tҩn công làm lӝ nguӗn gӕc bҧn tin ÿѭӧc ký

ĈӇ tҩn công làm lӝ nguӗn gӕc bҧn tin ÿѭӧc ký M, ngѭӡi ký

A cҫn lѭu trӳ giá trӏ các tham sӕ {T,e,s} và IDB ӣ mӛi lҫn ký

Tӯ ÿó, A có thӇ xác ÿӏnh ÿѭӧc danh tính cӫa B bҵng Thu̵t

toán 1.4 nhѭ sau:

Thu ұt toán 1.4:

Input: (M,e’,s’), {(ei, si,Ti, IDBi)| i=0,1,2,…N}

Output: IDBi

[1] m ← H (M), i = 0

[2] select: (e i,s i,T i,ID Bi)

[3] τ←( −e' e i)modq

[4] ε←( −s' s i)modq

[5] T T i yτ gεmodp

×

×

=

∗ [6] e F (T ||M)

H

=

[7] if (e ≠e') then

[7.1] i ← i + 1

[7.2] goto [2]

[8] return IDBi

Nh ̵n xét:

Tѭѫng tӵ nhѭ các thuұt toán ký mù ÿã xét ӣ trên, Thu̵t toán 1.4 cho thҩy lѭӧc ÿӗ chӳ ký mù Moldovyan là không an toàn nӃu sӕ lѭӧng bҧn tin ÿѭӧc ký (N) không ÿӫ lӟn, khi ÿó

viӋc xác ÿӏnh nguӗn gӕc bҧn tin là có thӇ thӵc hiӋn ÿѭӧc III XÂYDӴNGLѬӦCĈӖCHӲKÝSӔMÙ Qua phân tích các lѭӧc ÿӗ chӳ ký sӕ mù trên ÿây ÿã cho

thҩy viӋc làm “mù” bҧn tin vӟi mӝt tham sӕ bí mұt nhѭ ӣ lѭӧc

ÿӗ chӳ ký sӕ mù RSA, hay vӟi 2 tham sӕ nhѭ ӣ các lѭӧc ÿӗ

DSA, Nyberg-Rueppal và Moldovyan thì ngѭӡi ký vүn có thӇ

tìm ÿѭӧc nguӗn gӕc thӵc sӵ cӫa bҧn tin ÿѭӧc ký (danh tính

cӫa ngѭӡi yêu cҫu ký) Mөc này ÿӅ xuҩt viӋc phát triӇn lѭӧc

ÿӗ chӳ ký sӕ mù tӯ mӝt lѭӧc ÿӗ chӳ ký cѫ sӣ ÿѭӧc cҧi tiӃn tӯ

lѭӧc ÿӗ chӳ ký Schnorr [13] và mӝt lѭӧc ÿӗ xây dӵng trên bài toán logarit rӡi rҥc – DLP (Discrete Logarithm Problem) [14]

Ѭu ÿiӇm cӫa các lѭӧc ÿӗ mӟi này là cNJng chӍ sӱ dөng 2 tham

sӕ bí mұt nhѭ ӣ các lѭӧc ÿӗ mù DSA, Nyberg-Rueppal hay Moldovyan, nhѭng không cho phép ngѭӡi ký hay bҩt kǤ

mӝt ÿӕi tѭӧng nào khác có thӇ xác ÿӏnh ÿѭӧc nguӗn gӕc thӵc

sӵ cӫa bҧn tin nhѭ ӣ các lѭӧc ÿӗ ÿã ÿѭӧc công bӕ trѭӟc ÿó

[1-5]

3.1 Xây dӵng lѭӧc ÿӗ chӳ ký cѫ sӣ

3.1.1 Lѭӧc ÿӗ chӳ ký cѫ sӣ LD 15.01A

Lѭӧc ÿӗ chӳ ký cѫ sӣ ӣ ÿây, ký hiӋu LD 15.01A, ÿѭӧc

cҧi tiӃn tӯ lѭӧc ÿӗ chӳ ký do C Schnorr ÿӅ xuҩt vào năm 1991

và ÿѭӧc sӱ dөng làm cѫ sӣ ÿӇ phát triӇn lѭӧc ÿӗ chӳ ký sӕ mù

ӣ phҫn tiӃp theo Lѭӧc ÿӗ chӳ ký LD 15.01A bao gӗm các thuұt toán hình thành tham sӕ và khóa, thuұt toán hình thành

và kiӇm tra chӳ ký nhѭ sau:

a) Thu ̵t toán hình thành tham s͙ và khóa

Thuұt toán 2.1a:

Input: p, q|(p-1), x – khóa bí mұt cӫa A

Output: g, y, H(.)

[1] g h( −p 1 ) /qmod p

← , 1<h < p

[2] select H { }∗Z t

1 , 0 : , q<t< p

[3] y gxmodp

[4] return {g,y,H(.)}

b) Thu ̵t toán ký

Thuұt toán 2.2a:

Input: p, q, g, x, k, M – bҧn tin cҫn ký

Output: (e,s) – chӳ ký cӫa A lên M

[2] eH(r||M)modq (2.3a) [3] s←(k+x×e)modq (2.4a)

[4] return (e,s)

Chú thích:

- Toán tӱ “||” ӣ ÿây là phép nӕi 2 xâu bit



Trang 4

c) Thu ̵t toán ki͋m tra

 Thuұt toán 2.3a:

Input: p, q, g, y, M, (e,s)

Output: (e,s) = true / false

[1] ug s×y emodp (2.5a)

[2] vH(u||M)modq (2.6a)

[3] if (v = e) then {return true}

else {return false}

Chú thích:

- NӃu kӃt quҧ trҧ vӅ true thì chӳ ký (e,s) hӧp lӋ, do ÿó

nguӗn gӕc và tính toàn vҽn cӫa bҧn tin cҫn thҭm tra M ÿѭӧc

công nhұn

- NӃu kӃt quҧ trҧ vӅ là false thì chӳ ký (e,s) là giҧ mҥo, hoһc

nӝi dung bҧn tin M ÿã bӏ sӱa ÿәi

d) Tính ÿúng ÿ̷n cͯa l˱ͫc ÿ͛ c˯ sͧ LD 15.01A

ĈiӅu cҫn chӭng minh ӣ ÿây là: cho p, q là 2 sӕ nguyên tӕ

thӓa mãn ÿiӅu kiӋn q|(p−1) , g h( −p1 ) /qmodp

p

h <

<

1 , H:{ }0 , 1 ∗ Z t vӟi: q<t< p , 1<x,k<q ,

p

g

yxmod

= , r=g kmodp , e=H(r||M)modq ,

q e

x

k

s=( + × )mod NӃu: u=g s×y emodp

(u M) q

H

v= || mod thì: v = e

Thұt vұy, tӯ (2.1a), (2.3a), (2.4a) và (2.5a) ta có:

p g p g

p g

g p y

g

u

k e

k

x

e e k e

s

mod mod

mod mod

.

.

.

=

=

×

=

×

=

− +

(2.7a)

Tӯ (2.2a) và (2.7a), suy ra: u = r (2.8a)

Thay (2.8a) vào (2.6a) ta ÿѭӧc:

H

Tӯ (2.3a) và (2.9a), suy ra: v = e

Ĉây là ÿiӅu cҫn chӭng minh

e) M ͱc ÿ͡ an toàn cͯa l˱ͫc ÿ͛ c˯ sͧ

Mӭc ÿӝ an toàn cӫa mӝt lѭӧc ÿӗ chӳ ký sӕ nói chung ÿѭӧc

ÿánh giá qua các khҧ năng:

- Chӕng tҩn công làm lӝ khóa mұt

- Chӕng tҩn công giҧ mҥo chӳ ký

V ͉ kh̫ năng ch͙ng ṱn công làm l͡ khóa mât: Tӯ (2.1a)

cho thҩy mӭc ÿӝ an toàn xét theo khҧ năng chӕng tҩn công

làm lӝ khóa mұt cӫa lѭӧc ÿӗ cѫ sӣ phө thuӝc vào mӭc ÿӝ khó

giҧi cӫa bài toán logarit rӡi rҥc, hoàn toàn tѭѫng tӵ nhѭ vӟi

các lѭӧc ÿӗ chӳ ký DSA [9] , GOST R34.10-94 [10] và

Schnorr [13]

V͉ kh̫ năng ch͙ng ṱn công gi̫ m̩o chͷ ký: Tӯ (2.3a),

(2.5a) và (2.6a) cӫa lѭӧc ÿӗ cѫ sӣ cho thҩy, mӝt cһp (e,s) bҩt

kǤ (không ÿѭӧc tҥo ra bӣi Thu̵t toán ký 2.2a cӫa lѭӧc ÿӗ và

tӯ khóa bí mұt x cӫa ngѭӡi ký) nhѭng vүn sӁ ÿѭӧc công nhұn

là chӳ ký hӧp lӋ cӫa ÿӕi tѭӧng sӣ hӳu khóa công khai y lên

bҧn tin M nӃu thӓa mãn ÿiӅu kiӋn:

q M p y

g

H

e= (( s× emod )|| )mod (2.10a)

Tѭѫng tӵ nhѭ ӣ lѭӧc ÿӗ chӳ ký Schnorr, có thӇ thҩy rҵng

(2.10a) là mӝt dҥng bài toán khó nӃu các tham sӕ p, q và kích

thѭӟc cӫa dӳ liӋu ÿҫu ra hàm băm H(.) ÿѭӧc chӑn ÿӫ lӟn

3.1.2 Lѭӧc ÿӗ chӳ ký cѫ sӣ LD 15.01B

Lѭӧc ÿӗ chӳ ký cѫ sӣ ÿӅ xuҩt ӣ ÿây, ký hiӋu LD 15.01B,

ÿѭӧc xây dӵng dӵa trên tính khó cӫa bài toán DLP và ÿѭӧc sӱ

dөng ÿӇ phát triӇn lѭӧc ÿӗ chӳ ký sӕ mù trong phҫn tiӃp theo

a) Thu ̵t toán hình thành tham s͙ và khóa

Thuұt toán 21b:

Input: p, q|(p-1), x – khóa bí mұt cӫa A

Output: g, y, H(.)

[1] g h( −p 1 ) /qmodp

← , 1<h < p

[2] select H:{ }0 , 1∗Z t,q<t<p

[3] y g x−1modp

[4] return {g,y,H(.)}

b) Thu ̵t toán ký

Thuұt toán 2.2b:

Input: p, q, g, x, k, M – bҧn tin cҫn ký

Output: (e,s) – chӳ ký cӫa A lên M

[2] eH(r||M)modq (2.3b) [3] sx×( +k e)modq (2.4b)

[4] return (e,s)

c) Thu ̵t toán ki͋m tra



Thu ұt toán 2.3b:

Input: p, q, g, y, M, (e,s)

Output: (e,s) = true / false [1] uge×y smodp (2.5b) [2] vH(u||M)modq (2.6b)

[3] if (v = e) then {return true}

else {return false}

d) Tính ÿúng ÿ̷n cͯa l˱ͫc ÿ͛ c˯ sͧ LD 15.01B ĈiӅu cҫn chӭng minh ӣ ÿây là: cho p, q là 2 sӕ nguyên tӕ

thӓa mãn ÿiӅu kiӋn q|(p−1) , g h( −p1 ) /qmod p

p

h <

<

1 , H:{ }0,1∗Z t vӟi: q<t<p , 1<x,k<q ,

p g

y x−1mod

= , r=g kmodp , e=H(r||M)modq ,

q e k x

s= ×( + )mod NӃu: u=ge×y smodp

(r M) q H

v= || mod thì: v = e

Thұt vұy, tӯ (2.1b), (2.3b), (2.4b) và (2.5b) ta có:

p g p g

p g

g p y g u

k e

e

e k x e s

e

mod mod

mod mod 1 ( )

=

=

×

=

×

=

− +

+

(2.7b)

Tӯ (2.2b) và (2.7b), suy ra:

Thay (2.8b) vào (2.6b) ta ÿѭӧc:

H

Tӯ (2.3b) và (2.9b), suy ra: v = e

Ĉây là ÿiӅu cҫn chӭng minh

e) M ͱc ÿ͡ an toàn cͯa l˱ͫc ÿ͛ c˯ sͧ LD 15.01B

Tѭѫng tӵ lѭӧc ÿӗ LD 15.01A, mӭc ÿӝ an toàn xét theo

khҧ năng chӕng tҩn công làm lӝ khóa mұt cӫa lѭӧc ÿӗ LD-15.01B phө thuӝc vào mӭc ÿӝ khó giҧi cӫa bài toán logarit rӡi

rҥc, còn kh̫ năng ch͙ng ṱn công gi̫ m̩o chͷ ký phө thuӝc

vào ÿӝ khó cӫa viӋc giҧi (2.10b):

q M p y g H

e= (( −e× smod || )mod (2.10b)



Trang 5

3.2 Xây dӵng lѭӧc ÿӗ chӳ ký sӕ mù

3.2.1 Lѭӧc ÿӗ chӳ ký sӕ mù LD 15.02A

Lѭӧc ÿӗ chӳ ký sӕ mù ӣ ÿây ÿѭӧc phát triӇn tӯ lѭӧc ÿӗ

cѫ sӣ LD 15.01A Giҧ sӱ A là ngѭӡi ngѭӡi ký có khóa công

khai ÿѭӧc hình thành theo Thu̵t toán 2.1a cӫa lѭӧc ÿӗ cѫ sӣ

và B là ngѭӡi tҥo ra bҧn tin M ÿѭӧc ký Khi ÿó, thuұt toán ký

và kiӇm tra chӳ ký cӫa lѭӧc ÿӗ ÿѭӧc chӍ ra nhѭ sau:

a) Thu ̵t toán ký

Thuұt toán 3.1a:

Input: p, q, g, x, y, Į, ȕ, k , M

Output: (e,s)

[1] r g k p

[2] r ( )r (y g) p

a

×

×

[3] e H r M q

b|| ) mod (

[4] e b 1 (e )modq

β

[5] s a ←(k+x×e b)modq (3.5a)

[6] s←(α×s a +β)modq (3.6a)

[7] return (e,s)

Chú thích:

- Các bѭӟc [1], [5] do ngѭӡi ký A thӵc hiӋn

- Các bѭӟc [2], [3], [4], [6] và [7] do ngѭӡi có bҧn tin

cҫn ký B thӵc hiӋn

- Tham sӕ k do A lӵa chӑn thӓa mãn: 1< k < q

- Tham sӕ Į, ȕ do Blӵa chӑn thӓa mãn: 1 < Į, ȕ < q

- {x,y} là cһp khóa bí mұt/công khai cӫa A

b) Thu ̵t toán ki͋m tra

 Thuұt toán 3.2a:

Input: p, q, g, y, M – bҧn tin cҫn thҭm tra, (e,s) – chӳ

ký cӫa A

Output: (e,s) = true / false

[1] ug s×y emodp (3.7a)

[2] vH(u||M)modq (3.8a)

[3] if (v = e) then {return true}

else {return false}

Chú thích:

- NӃu kӃt quҧ trҧ vӅ true thì tính hӧp lӋ cӫa chӳ ký (e,s)

ÿѭӧc công nhұn, do ÿó tính toàn vҽn cӫa bҧn tin cҫn thҭm tra

M và danh tính cӫa ngѭӡi ký (A) ÿѭӧc khҷng ÿӏnh

- NӃu kӃt quҧ trҧ vӅ là false thì chӳ ký (e,s) là giҧ mҥo, hoһc

nӝi dung bҧn tin M ÿã bӏ sӱa ÿәi

c) Tính ÿúng ÿ̷n cͯa l˱ͫc ÿ͛ LD 15.02A

ĈiӅu cҫn chӭng minh ӣ ÿây là: cho p, q là 2 sӕ nguyên tӕ

thӓa mãn ÿiӅu kiӋn q| (p− 1 ), g h( −p1 /qmodp

= vӟi: 1 <h < p , { } Z q

1

,

0

: , 1<x,k<q , 1<α ,β<q , y gxmodp

p

g

a = mod , r ( )r (y g) p

a

×

×

b|| ) mod (

q e

e b 1 ( )mod

β

α × −

b

s= α× a+β mod NӃu: u= (g)s×( )y emodp

(u M) q

H

v= || mod thì: v = e

Thұt vұy, tӯ (3.4a), (3.5a), (3.6a) và (3.7a) ta có:

p g g g

p g

g g g g

p g

g

p y

g p y g u

a

x k

x e e

k

e x e

k

e s

e s

a

b b

b b

b a

mod ) ( mod

mod

mod mod

mod mod

.

.

) (

) (

) ( ) (

β α

β β α

β β α

β α β

α α

β α β α

β α β α

×

×

=

×

×

=

×

×

=

×

×

×

×

=

×

=

×

=

×

=

+

− + +

+ +

(3.9a)

Tӯ (2.1a), (3.1a) và (3.9a) ta có:

p g

g g u

a

k x

mod

mod β

β α

α β β

×

×

=

×

×

=

(3.10a)

Tӯ (3.2) và (3.10), suy ra: u = rb (3.11a) Thay (3.11a) vào (3.8a) ta có:

(u M) q H r M q H

Tӯ (3.2a) và (3.12a), suy ra: v = e Ĉây là ÿiӅu cҫn chӭng minh

d) M ͱc ÿ͡ an toàn cͯa l˱ͫc ÿ͛ LD 15.02A

Tѭѫng tӵ nhѭ vӟi lѭӧc ÿӗ cѫ sӣ, mӭc ÿӝ an toàn cӫa lѭӧc

ÿӗ chӳ ký mù mӟi ÿӅ xuҩt cNJng ÿѭӧc ÿánh giá qua các khҧ

năng:

- Chӕng tҩn công làm lӝ khóa mұt

- Chӕng giҧ mҥo chӳ ký

Ngoài ra, vӟi mӝt lѭӧc ÿӗ chӳ ký sӕ mù, mӭc ÿӝ an toàn

cӫa nó còn ÿѭӧc ÿánh giá qua khҧ năng chӕng tҩn công làm lӝ nguӗn gӕc bҧn tin sau khi ÿѭӧc ký Yêu cҫu ÿһt ra ÿӕi vӟi

lѭӧc ÿӗ mӟi ÿӅ xuҩt là bҧn tin M sau khi ÿã ÿѭӧc ký, thì ngѭӡi

ký A hay bҩt kǤ mӝt ÿӕi tѭӧng sӱ dөng nào khác cNJng hoàn toàn không thӇ biӃt ÿѭӧc bҧn tin M ÿѭӧc tҥo ra tӯ ÿӕi tѭӧng

B

Kh ̫ năng ch͙ng ṱn công làm l͡ khóa m̵t và gi̫ m̩o chͷ

Mӭc ÿӝ an toàn cӫa lѭӧc ÿӗ chӳ ký mù mӟi ÿӅ xuҩt ÿѭӧc thiӃt lұp dӵa trên mӭc ÿӝ an toàn cӫa lѭӧc ÿӗ cѫ sӣ Vì thӃ,

vӅ cѫ bҧn khҧ năng chӕng tҩn công làm lӝ khóa mұt và khҧ

năng chӕng giҧ mҥo chӳ ký cӫa 2 lѭӧc ÿӗ này là tѭѫng ÿѭѫng

nhѭ nhau

Kh ̫ năng ch͙ng ṱn công làm l͡ ngu͛n g͙c cͯa b̫n tin ÿ˱ͫc ký

Thuұt toán ký cӫa lѭӧc ÿӗ mӟi ÿӅ xuҩt cho thҩy, nӃu ӣ mӛi

lҫn ký bҵng viӋc lѭu trӳ các tham sӕ {sa,ra,eb,k} cùng vӟi ÿӏnh danh cӫa ngѭӡi yêu cҫu ký (IDB), ngѭӡi ký A có thӇ xác ÿӏnh ÿѭӧc mӕi quan hӋ giӳa {M,(e,s)} vӟi IDB, nghƭa là tӯ bҧn tin

M và chӳ ký tѭѫng ӭng (e,s) có thӇ xác ÿӏnh ÿѭӧc danh tính

cӫa ngѭӡi yêu cҫu ký B, vӟi ÿiӅu kiӋn ngѭӡi ký A biӃt ÿѭӧc các tham sӕ (Į,ȕ) Thұt vұy, khi biӃt (Į,ȕ) ngѭӡi ký A có thӇ

xác ÿӏnh ÿѭӧc IDB bҵng Thu̵t toán 3.3a nhѭ sau:

Thuұt toán 3.3a:

Input: {(rai,ebi,sai,ki,IDBi)| i=0,1,2,…N}, M, (e,s), Į, ȕ

Output: IDBi [1] m ← H (M), i = 0

[2] select: ( rai, ebi, sai, ki, IDBi) [3] r ( )r (g y) p

ai

×

×

← [4] e H r M q

bi*|| )mod (



Trang 6

[5] if e ≠e

then

[5.1] i ← i+1;

[5.2] goto [2];

[6] e bi 1 (e ) modq

β

α × −

[7] if e ≠biebi then

[7.1] i ← i+1;

[7.2] goto [2];

[8] s ai∗ ←(k i+x×e bi)modq

[9] if s ≠aisai then

[9.1] i ← i+1;

[9.2] goto [2];

[10] s∗←(α×s ai+β)modq

[11] if s ≠s then

[11.1] i ← i + 1;

[11.2] goto [2];

[12] return IDBi

Nh ̵n xét:

Thuұt toán 3.3a có thӇ xác ÿӏnh ÿѭӧc danh tính cӫa ngѭӡi

yêu cҫu ký B nӃu biӃt ÿѭӧc các tham sӕ bí mұt (Į,ȕ) do B tҥo

ra Nói cách khác, mӭc ÿӝ an toàn cӫa lѭӧc ÿӗ mӟi ÿӅ xuҩt xét

theo khҧ năng giӳ bí mұt nguӗn gӕc cӫa bҧn tin phө thuӝc vào

mӭc ÿӝ khó cӫa viӋc tìm ÿѭӧc các tham sӕ bí mұt (Į,ȕ) Tӯ

thuұt toán ký cӫa lѭӧc ÿӗ mӟi ÿӅ xuҩt cho thҩy tҥi thӡi ÿiӇm

ký A chӍ biӃt ÿѭӧc các tham sӕ ra, eb, sa ĈiӅu ÿó có nghƭa là

ÿӇ tính ÿѭӧc (Į,ȕ), A cҫn phҧi giҧi (3.13a):

r H

β

(3.13a) Tuy nhiên, tӯ các kӃt quҧ nghiên cӭu ÿã ÿѭӧc công bӕ có

thӇ thҩy rҵng (3.13a) là mӝt dҥng bài toán khó chѭa có lӡi giҧi

nӃu các tham sӕ p, q ÿѭӧc chӑn ÿӫ lӟn ÿӇ phѭѫng pháp vét

cҥn là không khҧ thi trong các ӭng dөng thӵc tӃ

Mһt khác, do mӛi bѭӟc thӵc hiӋn cӫa thuұt toán ký (Thu̵t

toán 3.1a) ÿӅu sӱ dөng 2 tham sӕ bí mұt (Į,ȕ) do B tҥo ra nên

các dҥng tҩn công làm lӝ nguӗn gӕc bҧn tin nhѭ các thuұt toán

ÿã chӍ ra ӣ Mөc 2 (Thu̵t toán 1.1, 1.2, 1.3 và 1.4) là không

khҧ thi ÿӕi vӟi lѭӧc ÿӗ mӟi ÿӅ xuҩt

3.2.2 Lѭӧc ÿӗ chӳ ký sӕ mù LD 15.02B

Lѭӧc ÿӗ chӳ ký sӕ mù, ký hiӋu LD-15.02B, ÿѭӧc phát

triӇn tӯ lѭӧc ÿӗ cѫ sӣ LD-15.01B CNJng giҧ thiӃt rҵng A là

ngѭӡi ký có khóa công khai ÿѭӧc hình thành theo Thu̵t toán

2.1b cӫa lѭӧc ÿӗ cѫ sӣ LD 15.01B và B là ngѭӡi tҥo ra bҧn tin

M ÿѭӧc ký Khi ÿó, thuұt toán ký và kiӇm tra chӳ ký cӫa lѭӧc

ÿӗ ÿѭӧc chӍ ra nhѭ sau:

a) Thu ̵t toán ký

Thuұt toán 3.1b:

Input: p, q, g, x, y, Į, ȕ, k , M

Output: (e,s)

[1] r g k p

[2] r b ( )r a α gβ yα βmodp

×

×

[3] eH(r b||M)modq (3.3b)

[4] e b 1 (e )modq

β

[5] s ax×(k+e b)modq (3.5b)

[6] s←α×(s a +β)modq (3.6b)

[7] return (e,s)

Chú thích:

- Các bѭӟc [1], [5] do ngѭӡi ký A thӵc hiӋn

- Các bѭӟc [2], [3], [4], [6] và [7] do ngѭӡi có bҧn tin cҫn ký

B thӵc hiӋn

- Tham sӕ k do A lӵa chӑn thӓa mãn: 1< k < q

- Tham sӕ Į, ȕ do Blӵa chӑn thӓa mãn: 1 < Į, ȕ < q

- {x,y} là cһp khóa bí mұt/công khai cӫa A

b) Thu ̵t toán ki͋m tra



Thuұt toán 3.2b:

Input: p, q, g, y, M – bҧn tin cҫn thҭm tra, (e,s) – chӳ ký cӫa A

Output: (e,s) = true /false [1] uge×y smodp (3.7b) [2] vH(u||M)modq (3.8b)

[3] if (v = e) then {return true}

else {return false}

c) Tính ÿúng ÿ̷n cͯa l˱ͫc ÿ͛ LD 15.02B ĈiӅu cҫn chӭng minh ӣ ÿây là: cho p, q là 2 sӕ nguyên tӕ

thӓa mãn ÿiӅu kiӋn q|(p−1) , g h( −p1 ) /qmodp

p

h <

<

1 , H { }∗Z t

1 , 0 : vӟi: q<t< p , 1<x,k<q ,

q

<

<α,β

1 , y g x−1modp

r b a α β α β mod

×

×

(e ) q

β

= − , s a=x×(k+e b)modq ,

(s ) q

s=α× a+β mod NӃu: u=ge×y smodp

(u M) q H

v= || mod thì: v = e

Thұt vұy, tӯ (3.4b), (3.5b), (3.6b) và (3.7b) ta có:

( )

p g

g

p g

g p y g u

b b

a b

e k x x e

s x e s

e

mod

mod mod

.

) (

.

1

1

+ +

+

×

=

×

=

×

=

β α α

β

β α α

β

g

p g

g g

g g

p g

g g g

k x

e k x

e

e k x x x

e

b b

b b

mod

mod mod .

.

.

) (

.

1 1

1 1

α β β

α α β α

β

α β α

β

×

×

=

×

×

×

×

=

×

×

×

=

+

(3.9b)

Tӯ (2.1b), (3.1b) và (3.9b) ta có:

p g

g g u

a

k x

mod

mod .

.

1

β β α

α β β

×

×

=

×

×

=

(3.10b)

Tӯ (3.2) và (3.10), suy ra: u = rb (3.11b) Thay (3.11) vào (3.8) ta có:

H

v= || mod = (b|| )mod (3.12b)

Tӯ (3.2b) và (3.12b), suy ra: v = e Ĉây là ÿiӅu cҫn chӭng minh

d) M ͱc ÿ͡ an toàn cͯa l˱ͫc ÿ͛ LD 15.02B

Mӭc ÿӝ an toàn xét vӅ khía cҥnh chӕng tҩn công làm lӝ khóa mұt và chӕng giҧ mҥo chӳ ký cӫa LD 15.02B có thӇ phân tích tѭѫng tӵ nhѭ vӟi lѭӧc ÿӗ cѫ sӣ LD 15.01B hay nhѭ



Trang 7

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)

vӟi các lѭӧc ÿӗ chӳ ký hӑ ElGamal nhѭ: DSA, GOST

R34.10-94, Schnorr …

Tѭѫng tӵ lѭӧc ÿӗ LD 15.02A, khҧ năng chӕng tҩn công

làm lӝ nguӗn gӕc cӫa bҧn tin sau khi ký cӫa lѭӧc ÿӗ

LD-15.02B cNJng có thӇ ÿѭӧc ÿánh giá qua phân tích khҧ năng

thӵc hiӋn thuұt tҩn công làm lӝ nguӗn gӕc bҧn tin ÿѭӧc ký nhѭ

sau:

Thuұt toán 3.3b:

Input: {(rai,ebi,sai,ki,IDBi)| i=0,1,2,…N}, M, (e,s), Į, ȕ

Output: IDBi

[1] m ← H (M ), i = 0

[2] select: ( rai, ebi, sai, ki, IDBi)

[3] r bi* ( )r ai α gβ yα β modp

×

×

bi*× ( )mod

[5] if e ≠e then

[5.1] i ← i + 1;

[5.2] goto [2];

[6] e bi 1 (e )modq

β

[7] if e ≠biebi then

[7.1] i ← i + 1;

[7.2] goto [2];

[8] s x (k e ) q

bi i

[9] if s ≠aisai

then

[9.1] i ← i+1;

[9.2] goto [2];

[10] s∗←α×(s ai+β )modq

[11] if s ≠s then

[11.1] i ← i+1;

[11.2] goto [2];

[12] return IDBi

Nh ̵n xét:

Thu ̵t toán 3.3b cho phép A có thӇ xác ÿӏnh ÿѭӧc danh

tính cӫa B nӃu có thӇ tính (Į,ȕ) nhӡ giҧi (3.13b):

q q

M p y

g r H

e b 1 ( (((a) . mod || )mod )mod

β

(3.13b) Tuy nhiên, (3.13b) là mӝt dҥng bài toán khó nӃu các tham

sӕ p, q ÿѭӧc chӑn ÿӫ lӟn Mһt khác, các dҥng tҩn công làm lӝ

nguӗn gӕc bҧn tin nhѭ các thuұt toán ÿã chӍ ra ӣ Mөc 2 (Thu̵t

toán 1.1, 1.2, 1.3 và 1.4) là không khҧ thi ÿӕi vӟi lѭӧc ÿӗ mӟi

ÿӅ xuҩt

IV KӂTLUҰN

Tӯ viӋc phân tích ÿiӇm yӃu cӫa mӝt sӕ lѭӧc ÿӗ chӳ ký sӕ

ÿã ÿѭӧc công bӕ, bài báo ÿӅ xuҩt 2 lѭӧc ÿӗ chӳ ký sӕ mù

mӟi ÿѭӧc phát triӇn tӯ các lѭӧc ÿӗ chӳ ký cѫ sӣ xây dӵng dӵa

trên tính khó cӫa bài toán logarit rӡi rҥc, 2 lѭӧc ÿӗ mӟi này có

mӭc ÿӝ an toàn cao hѫn các lѭӧc ÿӗ ÿã biӃt vӅ khҧ năng chӕng

tҩn công làm lӝ nguӗn gӕc cӫa bҧn tin ÿѭӧc ký Ĉây là mӝt

yӃu tӕ quan trӑng cho phép lѭӧc ÿӗ mӟi ÿӅ xuҩt có tính khҧ thi trong các ӭng dөng thӵc tӃ

TÀILIӊUTHAMKHҦO [1] D Chaum, Blind Signature Systems, Advances in Cryptology, Crypto’

83, Plenum Press, pp 153

[2] D Chaum, A Fiat, M Naor, “Untraceable Electronic Cash”, Advances

in Cryptology,Crypto’ 88, LNCS 403, Springer Verlag, pp 319-327

[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

[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

[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

[7] K Nyberg, R A Rueppel, A New Signature Scheme Base on the DSA

Giving Message Recovery, 1 st ACM conference on Computer and Communications Security, November 3 – 5, Fairfax, Virginia

[8] Jan L Camenisch, Jean-Marc Piveteau, Markus A Stadler, Blind

Signatures Base on Discrete Logarithm Problem, Swiss KWF Foundation, grant no 2724.1

[9] Nikolay A Moldovyan, Blind Collective Signature Protocol, Computer Science Journal of Moldova, vol.19, no.1(55), 2011

[10] National Institute of Standards and Technology, NIST FIPS PUB 186-3

Digital Signature Standard, U.S Department of Commerce, 1994

[11] GOST R 34.10-94 Russian Federation Standard Information

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)

[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)

[13] C P Schnorr, “Efficient signature generation by smart cards”, Journal

of Cryptology, vol 4, pp 161 – 174, 1991

[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



+ӝL7KҧR4XӕF*LDYӅĈLӋQ7ӱ7UX\ӅQ7K{QJYj&{QJ1JKӋ7K{QJ7LQ (&,7

MÔ HÌNH TRỌNG SỐ KẾT HỢP CÁC PHƯƠNG PHÁP TRÍCH CHỌN ĐẶC TÍNH TRONG NHẬN DẠNG HÀNH ĐỘNG NGƯỜI

Nguyễn Năng Hùng Vân, Phạm Minh Tuấn, Ung Nho Dãi

Khoa Công nghệ Thông tin, Trường Đại học Bách khoa, Đại học Đà Nẵng

Tóm tắt – Nhận dạng hành động người (tiếng Anh:

Human Activity Recognition - HAR) là một lĩnh vực nghiên cứu quan trọng về thị giác máy tính Khó khăn lớn nhất đối với hệ thống HAR là dữ liệu từ camera thông dụng là chỉ quay được ở một hướng, dẫn đến sự thiếu hụt

dữ liệu và dẫn đến kết quả nhận dạng thấp Bài báo này, tập trung vào nghiên cứu và xây dựng mô hình mới về nhận dạng hành động người, trong đó trọng tâm là phương pháp trích chọn đặc tính PCA, LDA nhằm giảm

số chiều và độ lớn của dữ liệu, góp phần nâng cao độ chính xác khi nhận dạng Trước tiên, từ dữ liệu chuyển động 3D, chúng tôi tiến hành tiền xử lý và trích chọn đặc tính của các đối tượng Tiếp đến, xây dựng các mô hình nhận dạng ứng với mỗi phương pháp trích chọn đặc tính, sử dụng mô hình SVM để huấn luyện Cuối cùng, sử dụng phương pháp trọng số để kết hợp kết quả của các mô hình nhận dạng và đưa ra kết quả cuối cùng Bài báo tiến hành thực nghiệm trên dữ liệu CMU Mocap và cho thấy tỷ lệ nhận dạng của phương pháp đề xuất cao hơn so với những phương pháp trước đây

Từ khóa - Nhận dạng hành động người; Phương pháp phân tích thành phần chính; Phân tích biệt thức tuyến tính;

Máy vector hỗ trợ

I.GIỚITHIỆU

Từ những năm 80 của thế kỷ trước, nhận dạng hành động người đã nhận được sự quan tâm, nghiên cứu của các nhà khoa học trên khắp thế giới Các kết quả nghiên cứu này được ứng dụng rộng rãi trong nhiều lĩnh vực khác nhau như hệ thống an ninh, y học, giao thông và giao tiếp giữa người và máy [1]

Trong những năm gần đây, những nghiên cứu trong lĩnh vực nhận dạng hành động người chủ yếu tập trung vào nghiên cứu và nhận dạng từ những video được quay bởi các camera thông dụng Khó khăn lớn nhất đối với

dữ liệu từ camera thông dụng là chỉ quay được ở một hướng, dẫn đến sự thiếu hụt dữ liệu, nếu kết hợp nhiều camera thì vẫn không đảm bảo thu được toàn bộ hoạt động, đồng thời giảm hiệu năng của quá trình nhận dạng

Nhằm khắc phục những khó khăn trên, trong những năm gần đây đã có một số nghiên cứu về phương pháp thu thập dữ liệu 3D hay sử dụng các hệ thống chụp chuyển động dựa vào “marker” như Motion Capture [2]

hoặc là sử dụng stereo camera chụp chuyển động 2D từ nhiều hướng khác nhau để dựng thành mô hình 3D, gần đây nhất là dùng các thiết bị cảm biến chiều sâu chuyên dụng như Microsoft Kinect [3]

Từ dữ liệu 3D thu được, bài báo trình bày một số phương pháp trích chọn đặc tính như phân tích thành phần chính (Principal Components Analysis - PCA) [4]

và phân tích biệt thức đa lớp (Multi-class Linear

Discriminant Analysis - Multi-class LDA) [5] nhằm nâng cao kết quả khi nhận dạng hành động người Điểm chung của hai phương pháp này là làm giảm số lượng thuộc tính của dữ liệu nhận dạng trước khi xây dựng mô hình huấn luyện đồng thời tăng hiệu quả nhận dạng Mỗi phương pháp trích chọn đặc tính khác nhau sẽ cho một kết quả nhận dạng khác nhau Bài báo này sử dụng phương pháp trọng số để kết hợp các phương pháp trích chọn đặc tính nhằm nâng cao hiệu quả nhận dạng

Nội dung của bài báo trình bày các nghiên cứu liên quan gồm phương pháp trích chọn đặc tính PCA, LDA

và phương pháp máy vectơ hỗ trợ (Support Vector Machine – SVM) Sau đó bài báo trình bày phương pháp

đề xuất Cuối cùng trình bày kết quả thực nghiệm và các đánh giá dựa trên dữ liệu của CMU Mocap [2]

Trong phần này, bài báo trình bày những vấn đề liên quan đến nghiên cứu như PCA, Multi-class LDA và phương pháp nhận dạng sử dụng SVM

A Phương pháp phân tích thành phần chính - PCA

Phương pháp phân tích thành phần chính [4] (Principal Components Analysis - PCA) là một thuật toán thống kê sử dụng phép biến đổi trực giao để biến đổi một tập hợp dữ liệu từ một không gian nhiều chiều sang một không gian mới ít chiều hơn Phép biến đổi này dựa trên việc tìm trục của không gian mới sao cho phương pháp dữ liệu chiếu lên trục đó là lớn nhất

Thay vì giữ lại các trục tọa độ của không gian cũ, PCA xây dựng một không gian mới ít chiều hơn, nhưng lại có khả năng biểu diễn dữ liệu tốt tương đương không gian cũ, mà vẫn đảm bảo phương sai của dữ liệu trên mỗi chiều mới là lớn nhất Hình 1 là một minh họa kết quả của việc xây dựng không gian mới của PCA

a) Không gian dữ liệu ban đầu b) Không gian dữ liệu mới

Hình 1 Minh họa PCA

y

z

x

a

b

y

119

...

- Các bѭӟc [1], [5] ngѭӡi ký A thӵc hiӋn

- Các bѭӟc [2], [3], [4], [6] [7] ngѭӡi có bҧn tin

cҫn ký B thӵc hiӋn

- Tham sӕ k A lӵa chӑn thӓa mãn: 1< k < q

-. ..

- Các bѭӟc [1], [5] ngѭӡi ký A thӵc hiӋn

- Các bѭӟc [2], [3], [4], [6] [7] ngѭӡi có bҧn tin cҫn ký

B thӵc hiӋn

- Tham sӕ k A lӵa chӑn thӓa mãn: 1< k < q

-. .. class="page_container" data-page="7">

Hội Thảo Quốc Gia 2015 Điện Tử, Truyền Thông Công Nghệ Thông Tin (ECIT 2015)

vӟi lѭӧc ÿӗ chӳ ký hӑ ElGamal nhѭ: DSA, GOST

R34.1 0-9 4, Schnorr …

Ngày đăng: 28/04/2022, 09:43

HÌNH ẢNH LIÊN QUAN

ÿѭӧc hình thành theo lѭӧc ÿӗ chӳ ký RSA. B là ngѭӡi tҥo ra - Kyyeuhoinghi REV-ECIT 2015 - 21
c hình thành theo lѭӧc ÿӗ chӳ ký RSA. B là ngѭӡi tҥo ra (Trang 1)
y =x mo d. Thӫ tөc hình thành chӳ ký “mù” bao gӗm các b ѭӟc nhѭ sau:   - Kyyeuhoinghi REV-ECIT 2015 - 21
y =x mo d. Thӫ tөc hình thành chӳ ký “mù” bao gӗm các b ѭӟc nhѭ sau: (Trang 2)
2.4. Tҩn công lѭӧc ÿӗ chӳ ký sӕ mù Moldovyan - Kyyeuhoinghi REV-ECIT 2015 - 21
2.4. Tҩn công lѭӧc ÿӗ chӳ ký sӕ mù Moldovyan (Trang 3)
a) Thu̵t toán hình thành tham s͙ và khóa - Kyyeuhoinghi REV-ECIT 2015 - 21
a Thu̵t toán hình thành tham s͙ và khóa (Trang 3)
a) Thu̵t toán hình thành tham s͙ và khóa - Kyyeuhoinghi REV-ECIT 2015 - 21
a Thu̵t toán hình thành tham s͙ và khóa (Trang 4)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w