1. Trang chủ
  2. » Luận Văn - Báo Cáo

Zero knowledge và ứng dụng trong an toàn dữ liệu

90 0 0

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Zero Knowledge Và Ứng Dụng Trong An Toàn Dữ Liệu
Tác giả Bùi Xuân Bình
Trường học Đại Học Vinh
Chuyên ngành Toán Tin
Thể loại thesis
Năm xuất bản 2014
Thành phố Vinh
Định dạng
Số trang 90
Dung lượng 3,14 MB

Cấu trúc

  • 1.1.2. Các tính ch t (10)
  • 1.2.2. Các tính ch t (12)
  • 1.2.3. Giao th c (13)
  • 1.2.4. Các thành ph n trong phép ch ng minh không ti t l thông tin (13)
  • 1.3.2. th ng CM KTLTT hoàn thi n (17)
  • 1.3.3. th ng CM KTLTT hoàn thi u ki n 1.4. 1.4.1. ch ng minh (0)
  • 1.4.2. Tính ch t c (23)
  • 1.4.3. Ch có tín ....................................................... M T MÃ (24)
  • 2.1.1. Các khái ni i s (24)
  • 2.1.2. Các khái ni m trong s h c (28)
  • 2.1.3. Lý thuy ph c t p (32)
  • 2.2.1. T , ngôn ng (37)
  • 2.2.2. Mã khóa bí m t (38)
  • 2.2.3. Mã khóa công khai (43)
  • 2.2.4. Ch ký s (48)
  • 3.1.2. Giao th c xác th c Feige-Fiat-Shamir (52)
  • 3.1.3. Giao th ............................................................. 3.2. ............... 3.2.1. Khái ni n t ................................................................... 3.2.2. Khái ni m ti n t (0)
  • 3.2.3. Mô hình giao d ch mua bán b ng ti n t (56)
  • 3.2.4. V n t ................................................................................... 3.2.5. ti n t Brand (58)
  • 3.3.2. M t s khái ni m (69)
  • 3.3.3. Ch ng minh tính h p l c a lá phi u (x, y) (Giao th c 1) (71)
  • 3.3.4. Ch ng minh quy n s h u giá tr bí m t  (Giao th c 2) (0)
  • 3.3.5. n c tri chuy n lá phi n ban ki m phi (76)
  • II. Mã ngu (82)

Nội dung

ZERO KNOWLEDGE 1.1.. Có th d dàng b khóa trong kho ng vài phút.. Mã khóa công khai: a.. Khái nim: Mã khóa công khai là h mã hóa có khóa l p mã và khóa gikd, bi c khóa kia.. Ti n t i dùn

Các tính ch t

M t s ch c th a nh n là Complete n u Verifier

Ví d , n u m t Prover nói r ng anh ta bi t m t giá tr bí m t, và ki m ch ng là ch ng minh nó v i Verifier ch có th nói r ng Hoàn thành

+ Tính cht chc ch n - kh nh r ng m t Verifier s ch ng minh n u th c t nh lý sai nào có th c c

Trong c ng h p gi nh là Prover và Verifier tuân theo Giao th c i các Party khác và c hi u thông tin theo m khác

+ S hoàn thành - Cho m i th c t i Prover

+ Tính v ng ch c - Cho các th c t t c Pro

Verifier tr l i t t c các Prover, v i xác xu

Phép ch th c hi c trong th là phép ch c

 Minh h a ho ng c a giao th ch ng minh c u c th

Gi s G 1 = {V, E1} và G2 = {V, E2 th v i t nh V = {1 4} và các t p c nh 1 E = {12, 13, 14, 34} và E 2 = {12, 13, 23, 24} Gi s Alice bi t G2 ng c u v i G1 qua hoán v = {4 1 3 2}.

M t vòng c a giao th c có th     x

- Alice ch n ng u nhiên m t hoán v  th H s có t p c n

{12, 13, 23, 24} là nh c a G1 qua  , Alice g i H cho Bob

- Alice th th y hoán v  = . = {3 2 1 4} ánh x G2 thành H và g i  cho

- Bob th 2 qua hoán v nh c a G  Ta k t lu n vòng h

Toàn b giao th c g m có m = log2n vòng

Nói m n, h th ng ch ng minh không ti t l thông tin cho m ng thuy t ph c m ng khác tin vào m mà v l ng minh (không ti t l thông tin)

 Gi s u V ch c khi ch n ki m tra ch c ch n r th u P ch u này N u t cách ch t thúc, vì nhiên là anh ta có th ch

Có m P ch ng minh r không ph i l c là không làm l thông tin v 2 tay P R i cho V m

Qua ví d trên có th t m hi ng minh không ti t l l s v t, s vi c c n ch ng minh V i nh l i x hi u bi t (knowledge) v s v t, s vi c, h ch c r t ít m tính ch t c a nó.

Các tính ch t

 tính không cô zero-knowledge.

Giao th c

Giao th c  là giao th i - P ch ng minh cho v

- P g i cho V: m t giá tr ng u nhiên

K t qu V th a nh n ho c bác b v P ch ng minh

Chng minh không ti t l thông tin  c phát minh b i Goldwasser, c vi t t t là GMR) Ch ng mi thông tin (và ch t trong nh ng lý thuy t hay ng l n trong khoa h c máy tính.

Các thành ph n trong phép ch ng minh không ti t l thông tin

Có hai nhân v ng xuyên nh n trong v

- i ch ng minh): Peggy có thông tin mu n ch ng cho Victor th y l i không mu n nói th ng bí m

- i xác minh): Victor h i Peggy m t lo t các c g c là Peggy có th c s bi c bí m u gì t bí m khi anh ta gian l n hay không d n c a giao th c.

+ Khái m ni : th ng c c mô t i t t gi nhiên nó không n m trong l Định nghĩa 1.1 Đồ th ị đẳ ng c u ấ th 1 = (V1nh G, E1) và G2 = (V2, E2), G1 và G2 ng c u n u có m t song ánh p: V1 V 2 sao cho {u,v} E 1 khi và ch khi : {p(u), p(v)} E 2

+ M ch ng c u c  th m th c hi n m r th ng c u b ng m t giao th c ch vào lúc k t thúc giao th c Nam v n không có chút thông tin nào v cách ch ng minh (cho chính anh ta ho c ch i th 3) r ng c t khái ni m r d nh

H thng CMKTLTT hoàn thing cu c  th : u vào:

Thông tin bí m t c a Lan: Phép hoán v 2 tr thành G1

- Lan ch n m t phép hoán v ng u nhiên c c a G1 theo và g i H cho Nam 

- Nam ch n m t s nguyên ng u nhiên i = 1 ho c 2 và g i nó cho Lan

- Lan tính m t phép hoán v  thành G i Lan s g i  cho Nam

(n u i=1 thì Lan s  = nh n u i=2 thì Lan s  nh  h p c và  ).

- Nam s ki m tra xem H có ph i là nh c a Gi theo  hay không

Nam s ch ch p nh n ch ng minh c a Lan, n u H là nh c a Gi m i m t trong n vòng

 Gi s G1 = (V, E1) và G2 = (V, E2 1 {12, 13, 14, 34} và E2={12, 13, 23, 24} M ng c u t G2 sang G1 là hoán

Bây gi gi s a giao th c, Lan ch n hoán v = ( p c nh {12, 13, 23, 24}

N u yêu c u c a Nam là i = 1 thì Lan s cho Nam phép hoán v và Nam s  ki m tra xem nh c a G1 theo có ph i là H không

N u yêu c u c a Nam là i = 2 thì Lan s cho Nam phép h p   = (3, 2, 1, 4) và Nam s ki m tra xem nh c a G2 theo  có ph i là H không

D dàng ki n c y r ng, xác su Nam ch p nh n s b ng 1 n u Lan bi t phép minh G1 ng c u v i G2 c l i, n u Lan không bi t phép ch ng minh thì ch có m Lan l a d c Nam và cô ta ph i gi nh giá tr i mà ch n m i vòng và truy n cho Nam m th ng ng c u v ng) Xác su Lan gi u c a Nam trong c n v -n

T t c các tính toán c a Nam có th th c hi c trong th t t c các tính toán ph i th c hi n là các phép sinh s ng u nhiên và các phép hoán v y r ng, các tính toán c c th c hi n trong th c) n u cô ta bi c s t n t i c v 2 nh c a G 1

T i sao ta l i coi h th ng ch ng minh là h th ng ch ng minh không ti t l thông tin? Lý do là ch m 1 t ph c r ng Gng c u v i G2 c tý ki n th hoán v 2 v G1 T t c nh u mà Nam th y trong m i vòng c a phép ch ng minh là m th ng ng c u v1 và G2 cùng v i th G m t phép hoán v 1 thành H ho 2 hai) Tuy nhiên, Nam có th t mình tính các b n sao ng u nhiên c th nà mà không c n t i s c th c ch n m và ng u nhiên m i ph n c a phép ch gì cho Nam trong vi c tìm m ng c u t G1 sang G2 c n ch :

- Các s ng t o các yêu c u c a mình

B i v ch th s có d ng sau:

+ Gi mo biên b n ghi nh c sau giao th c ch ng minh m m u ch t (t c v không ti t l thông tin) là Nam (hay b i nào khác) có th gi m o c thông tin T (mà không c n ph i tham gia vào h th ng ch ) h c t Vi c gi m c th c hi n theo thu

Thu ậ t toán gi m ả ạ o ch ứng minh tương hỗ cho tính đẳ ng c u: ấ u vào: th G1 và G2, m th có t Thu t toán:

Ch n ng u nhiên ij =1 ho c 2

Ch n j là m t hoán v ng u nhiên c Tính Hj là nh c a Gj theo i  j

Ghép (Hj, ij,  j ) vào cu i c a T

Theo ngôn ng c a phép ch ng minh không ti t l thông tin, m t thu t toán gi m c g i là m t b mô ph ng Vi c m t b mô ph ng có th có m t h qu r t quan tr ng B t kì k t qu nào mà Nam (hay b t kì ai khác) có th tính t c t m t b n T gi m o B i v y, vi c th th ng ch ng minh s này không cho phép Nam t ch 1c r ng G và G2 ng c thuy t ph 1 và Gc ai khác r ng G2 ng c u b ng cách ch cho h m t b n T, b phân bi t m t m t b n T gi m o.

th ng CM KTLTT hoàn thi n

c h t cách chính xác v thông tin gi m m t ch theo thu t ng v các phân b xác su t

Gi s ta có m t phép ch x cho bài toán và m t b ph ng th c S Kí hi u t p t t c các thông tin T có th tính t x

(t p F này nh c t vi c th c hi n phép ch c a La và kí hi u t m o có th c t o b i thông tin cho p (T) là xác su T là thông tin gi m c t o b i S Gi s r

F(x) và v i b t kì T  (T) = pF(T) (nói cách khác, t p các thông tin th ng nh t v i t p các thông tin gi m o và hai phân b xác su

Khi th ng ch là h th ti t l thông tin hoàn thi i v i Nam c tính không ti t l thông t u quan tr i gi tính này Ta coi r ng m t h th ng ch là h không ti t l tin cho Nam n u t n t i m t h mô ph ng t o ra T có phân b xác su ng nh t v i phân b xác su t c c t o ra khi Nam tham gia vào g t r ng T s ch a t t c vào giao th c B i v y, s là h p lý khi ta xem r ng b t c vi c gì mà Nam có th th c hi c sau khi tham gia vào giao th c mà anh th c hi c n u s d ng h mô ph t o T gi m o M u bi t) b ng cách ti p c c tý nào

Ch ứ ng minh:  là h thng CMKTLTT hoàn thin:

Bây gi ta s ch ng t r ng h th ng ch th là m t h th ng ch ng minh không ti t l thông tin hoàn thi i v i Nam

Gi s G1 và G2 th ng c nh M t b n T (th m o) s g m n b ba d n c i c nh c a Gi theo hoán v i m t b ba h p l và ký hi c tiên ta s tính |R| là s các b ba h p l nhiên là |R| = 2.n! vì m i phép ch nh m th duy nh m c j b t kì c a thu t toán gi m o, rõ ràng là m i b l xu t hi n v i xác su ng 1/(2.n!) V y x l ba th j b n sao th c là gì? Trong h th ng ch c tiên Lan s ch n m t phép hoán v ng u i nh c là h p c a hai phép hoán v  u i = 2.

Gi s giá tr c c ch n ng u nhiên b i Nam N u i=1 thì t t c n! p hoán v ng xác su ng h  và  phép hoán v ng u nhiên M t khác, n   là n ng h p này m i phép hoán v có th u có xác nhau Xét th y, vì c ng h u có xác su t b ng phép hoán v ng xác su t (không ph thu c vào giá tr c a i) và b nh H nên suy ra m i b ba trong R ch c ch n s ng xác su t

Vì thông tin g m n b ba ng c l p ghép l i v m i b n sao có th có T ta có: p (T) = pF(T) = ( 2 * 1 n )! n

Trườ ng h p có không k trung th ợ ẻ ự c:

Trong ch gi thi t Nam tuân th giao th c khi anh ta th vào h th ng ch Tình hình s ph c t không tuân theo giao th c Ph t phép ch l thông tin ngay c khi Na ch kh i ng h ng c th , cách duy nh t mà Nam ch ch kh i giao th c ch n các yêu c u i c a mình theo cách không ng u nhiên V m t tr c giác, có v u này không cung c p cho Nam m nào Tuy nhiên các b c t o b i b mô ph ng s không còn gi b n sao do Nam t o ra n ch kh i giao th c Ví d , gi s N i=1 trong m i vòng c a phép ch ng minh Khi có m t b n sao c a phép ch ng minh s có ij = 1 v t b ph ng s có ij = 1 v i xác su t xu t hi n b ng 2 -n i ch ng t r ch ch kh i giao th n t n t i m t b mô ph ng v i th i g ra các b c t o b i Lan và Nam (không trung th c) trong phép ch ng minh c hình th hai phân b xác su ng nh t

1.3.3  thng CM KTLTT hoàn thi n khô u ki n 

Gi s r ng ta có m t h th ng ch theo th cho m t bài toán quy c  Cho V* là m t thu t toán xác su th c mà Nam (có th không trung th c) s d t o các yê mình (t c là V* bi u th cho m i ki m tra trung th c ho c không trung th c).

Ký hi u t p t t c các thông tin có th c t o ra do k t qu c a phép ch ng mà Lan và V* th c hi n v ng h p Lan bi t x c a  x) Gi s r ng v i m y t n t i m t thu t toán xác su t theo th c S* = S* (V* ) (b mô ph ng) t o ra m t b n sao gi m o Kí hi u t p cá b n sao gi m o có th b ng F( * V , x) V i m t b n sao b t k T  pF(T) là xác su T là thông tin do V* t o ra khi tham gia vào phép ch ng minh

, v i T F(x), cho p F (T) là xác su T là thông tin (gi m c t o b i S* Gi s r ng F(V*, x) = F( V*, x) và v i b t k T  F(V*, x), gi s r ng pF,V*(T) = p ó h th ng ch c th ng ch ng minh không ti t l thông tin hoàn thi u ki n. ch ng minh r ng h th ng ch ng minh là không ti t l thông tin hoàn thi n ta c n m t phép bi xây d ng m t b mô ph ng S* t V* b t k

Ta s ti p t c th c hi n vi i v i h th ng ch c u c th B mô ph ng s a Lan s d i t o l i Nói m t cách không hình th c, S gi nh m t yêu c u ij mà V* s i vòng j T c là S* s t o ra b ba h p l ng u nhiên có d ng (Hj, ij j) và th c hi n thu th yêu c u c a nó dành cho vòng j N u gi j ginh i i u j c t o b i V*) thì b ba (Hj, ij j) s c g n vào b n sao gi m o N u không thì b ba này s b lo i b S* s gi nh m t yêu c u m i b u c a vòng hi n t

Thu t ng c hi u là các giá tr c a t t c các bi n dùng tr toán

Bây gi ta s t mô t chi ti thu t toán mô ph ng S* m b c, trong khi th c hi

Thu t toán gi m  o cho V*  i v i các b th  ng cu u vào: th ng c u G1 và G2, m th có t Thu t toán:

For j = 1 to n do nh tr ng tr ng thái ( * V )

Ch n ng u nhiên ij =1 ho c 2

Ch n p j là phép hoán v ng u nhiên c Tính Hj là nh c a Gj i j

If ij = j then Ghép (Hj, ij j) vào cu i c a T

Thi t l p l i V* b nh tr ng thái (V*) = tr n j = j Có kh mô ph ng s không d ng l i n u không x y ra ij = j

Tuy nhiên, có th ch ng t r ng, th i gian ch y trung bình c a b mô ph ng là th c và hai phân b xác su t pF,V*(T) và p ng nh t

 V h thng ch th  ng c u 

Phát biu: H th ng ch ng c th ch ng minh không ti t l thông tin hoàn thi n.

Chng minh: c tiên ta th y r ng b t lu n V* t o các yêu c u c a nó ra sao, xác su gi nh j c a S* gi j là b ng u i y trung bình S* ph i t c hai b t c m t b ba g n vào b n sao gi m ch y trung bình là th c theo n

Nhi m v i ch ng t r ng hai phân b xác su t pF,V*(T) và p V*(T) là n c hai phân b xác su t v ng nh t v ng h i ki m tra trung th m t y u t là các b c t o các vòng khác nhau c a phé c l p Tuy nhiên tr hai phân b xác su a, các b c t o các vòng khác nhau c a ch ng minh l c l p Ví d , yêu c vòn thu c theo m t ki u r t ph c t các yêu c

Cách kh c ph i xem xét các phân b các b n sao b ph n có th trong quá trình mô ph ng ho c ch p t c b p trên s các vòng V nh các phân b xác su t pF,V*(T) và p V* (T) trên t p các b n sao b ph n Tj xu t hi n cu i vòng j Chú ý r ng pF,V*, j(T) = p (T) và pF,V*, n(T) = p (T) B i v y, n u có th ch ng t r ng hai phân b p (T) và p ng nh t v i m i j u c n ch ng minh ng h p j = 0 ng v i khi b u thu t toán: lúc này b n sao ch g m h th G1 và G2 B i v y các phân b xác su ng nh t khi j = 0 Ta s s d n b u phép quy n p. c tiên gi s hai phân b xác su t pF,V*, j-1(T) và p (T) trên T-1 j-1 là ng nh t v i giá tr ch ng t r ng pF,V*, j(T) và p j ng nh t u x y ra trong vòng j c a phép ch Xác su c u c a V* là ij = 1 là m t s th j = 2 là yêu c u

1-pj, j ph thu c vào tr ng thái c a thu t toán V* khi b u vòng j trên ta nh n xét r ng, trong phép ch t t c th H c Lan ch n v i xác su y, m t phép hoán v hi n v i xác su thu c vào giá tr pj), vì m i phép hoán v ng kh i v i m i yêu c u ij có th B i v y, xác su b ba th j trên b ng pj/n n u i = 1 và b ng (1-pj)/n n u i=2

Ti p theo ta s th c hi cho phép mô ph ng c l c b t k c a vòng l p REPEAT, S* s ch n m th v i xác su t 1/n! Xác su 1 và yêu c u c a V* là 1 b ng pi= j/2: xác su i=2 và yêu c u c a V* là 2 b ng 1/2 s c truy kì c a vòng l p REPEAT c h t s ng h trên, xác su

V* = 1 là pj Xác su m t b c coi là b ba th j tro c ti p t c truy c l p th l c a vòng

B i v y, xác su ba th j trong b n sao là:

1 1 = p n! 1 ng h : coi là b ba th j trong b n sao b ng (1-p1)/n! y hai phân b xác su t trên các b n sao b ph n t i cu nh t Theo quy n p, hai phân b xác su t pF,V*, j-1(T) và p -1 c ch ng minh

Bây gi ta s trình bày m t s ví d khác v các h th ng ch ng minh không ti t l thông tin hoàn thi n M t phép ch ng minh không ti t l thông tin hoàn thi n cho các th

Ch không ti t l thông tin hoàn thi n cho th   c hai: u vào: M t s các s nguyên t và x QR(n) 

- Lan ch n m t s ng u nhiên v Z n * và tính y = v 2 mod n Lan g i y cho

- Nam ch n m t s nguyên ng u nhiên i=0 ho c 1 và g i nó cho Lan

- Nam s ki m tra xem li u có th a mãn z 2 i y(mod n)

- Nam s ch p nh n ch ng minh c a Lan n u tính toán c ki tra cho m i vòng (trong log2n vòng) i ch ng t r ng x là m t th c hai m i vòng t o m t th c hai ng u nhiên y và g yêu c u c a Nam, Lan s c hai c a y ho c

Tính ch t c

Rõ ràng là giao th ch n u x không ph i là m t th c 2 thì Lan ch có th tr l i m t trong hai y c u có th ng h p này y là m t th c hai khi và không ph i là m t th c hai B i v y Lan s b tóm m b t k c a giao th c v i xác su t 1/2 và xác su c toàn b n vòng ch b ng 2 log 2 n 1/n (lý do có log2n vòng là do c a bài toán t l v i s bít trong bi u di n nh phân c 2n) B i v y xác i là log su a c a Lan s là m a c ng minh không ti t l

Ch có tín M T MÃ

Có th ch ra tính không ti t l thông tin hoàn thi i v i Nam theo cách ng c th Nam có th t o ra b ba (y c tiên ch 2 (x i ) -i mod n nh: y = z

Các b c t o theo cách này có cùng phân b xác su c t o trong giao th c v i gi thi t Nam ch n các yêu c u c a mình m t cách ng u nhiên Tính không ti t l thông tin hoàn thi n (v i V* tùy ý) có th c ch i v i ph i xây d ng m t b mô ph gi nh các yêu c u c a V gi l i các b ba ng v i các gi ng

Các khái ni i s

1  F, 1 0, a   F, a.1 = 1.a = a; : a F và a  a-0,  1  F, a-1.a = a. F8: Phép nhân giao hoán: a, b F, a.b = b.a; 

Các khái ni m trong s h c

Khái nic chung l n nh t: guyên

Khái ni m nguyên t cùng nhau:  

1, m2 r ính x  a mod m x  a2 mod m2 x  ar mod mr

  2 mod 5, x 3 mod 7, x 5 mod 3   x  2 mod 5 17 mod 5  x  x  3 mod 7 17 mod 7  x 

Lý thuy ph c t p

Phân lo i:  Thu phép toán m b) 

Chi phí c a thu t toán:   ình tính toán

 Khái ni ệm “Dẫ n v ề được”

 Khái ni ệm “Khó tương đương”

NP Hard – (NP - L  ài toán NP

A  NP Bài toán NP - Complete là bài toán NP -

* Chng minh bài toán là NP Hard 

T , ngôn ng

Ta nói, w  * là A khúc con factor( x A sao cho: x = u wv w  A (prefix

v A * sao cho: x= wv w A khúc  x  A  u * sao cho: A x = uw con uv 

 w  A 1 , u 2 , , un un  0 sao cho w = u 1 u 2 u n X A*, ta bi X

Y = {u 1 X, Xu 1 thay cho XY, Xu u,

Mã khóa bí m t

Mã khóa bí m t là h mã hóa mà bi c khóa l p mã thì có th khóa gi c l i

H Mã khóa bí m t mã hóa và gi mã hóa khóa b

+ Mã khóa bí m t an toàn v i lý do sau: i gi i mã ph t khóa Khóa m t tuy i, vì bi

+ V th a thu n khóa và qu i g i nh n ph i luôn th ng nh t v i nhau v khóa Vi khóa là r t khó và d b l Khóa chung ph c g i cho nhau trên kênh an toàn

M i (l p mã, gi i mã) cùng bi khó gi c bí m t

H Mã khóa bí m c s d ng mà k d dàng trao quy n bí m t, ch ng h n trong cùng m t m ng n i b H Mã khóa bí m mã hóa nh ng b n tin l n, vì t mã hóa và gi i mã hóa khóa công khai b 

- H Mã khóa bí m t - c n: H mã hóa d ch chuy n, h mã hóa thay th , h mã hóa AFFINE, h mã hóa VIGENERE, h mã hóa hoán v c c b , h mã hóa HILL

- H Mã khóa bí m t DES - mã kh i:

+) DES: 56 bit, không an toàn Có th d dàng b khóa trong kho ng vài phút

+) Triple DES, DESX, GDES, RDES: M r dài khóa mã DES lên 168 bit

(1969), DES (1977), Madryga (1984), NewDES (1985), FEAL, REDOC, LOKI

(1990), Khufu and Khafre (1990), RC2, RC4, IDEA (1990), MMB, CA-1.1,

Shipjack, GOST, CAST, Blowfish, SAFER, 3-Way, Crab, SXAL8/MBAL, SAFER,

Mã khóa công khai

Mã khóa công khai là h mã hóa có khóa l p mã và khóa gi kd), bi c khóa kia Vì v y gi i mã, còn công khai khóa l mã hóa lo i này còn có tên g i là mã hóa khóa công khai l p mã

+ H m ch y u sau: Thu công khai cho nhi u l n dùng, cho nhi i dùng, h ch c n gi bí m t khóa riêng c a mình

+ Khi bi t các tham s u c a h mã hóa, vi c tính ra c p khóa công khai và khóa bí m t ph c là trong th c i g i b o ra b i nh n b n mã C và khóa bí m c thành b n rõ

+ i gi i mã gi khóa bí m có m i gi gìn N u th công khai, c g ng tìm khóa bí m t, thì chúng ph u v

+ N u thám mã bi t khóa công khai và b n mã C, thì vi c tìm ra b n rõ P phép tr là vô cùng l n, không kh thi

H mã hóa khóa công khai: mã hóa và gi i mã ch i x ng

-   d ng h mã khóa công khai

H c s d ng ch y u trên các m c trao chuy n khóa bí m i b t c a h Mã khóa công khai là khóa công khai (public key) v b u có th g t kênh truy n t bi t c khóa công khai và b mã hóa và gi i mã ch m, nên h mã hóa công kh mã hóa nh ng b n tin ng n.

H c s d ng cho c khóa bí m t c a h mã hóa khóa riêng b) 

’ c) M t s h   mã khóa công khai ph n nh bi t:

- RSA: Lo c dùng nhi u nh ng là t n 1024 bit

 Khóa công khai là KP = (e, N)

Ch ký s

 sig K (x) = x a mod n và ver K (x,y) = TRUE   b Z n c)  (Digital Signature Algorithm)

3.1.1 Giao thc xác thc Fiat-Shamir

Giao th c xác th c Feige-Fiat-Shamir

 - các khóa riêng [s1, s2, , sk], 1 vector khóa chung [v1, v2, , vk] và 1 vector các challenge [c1, c2, , ck]

[s1, s2, , sk private key r: Random number

3.1.3 Giao thc xác minh  a) p và q q p| -1 p| = 1024 và | | = 160q b) g p( ) = rderg q c) -ay = g (mod )p a < q d) p q q y, , , e) q -a (mod )a pZ f) 2log2p

- u Zq và tính k  gk (mod p

3.2.1 Khái nin t  i n t ng nh b i vì m c tiêu cu i cùng c a cu nh ng cái gì c i bán nh c s ti n thanh toán

Thanh toán là m t trong nh ng v ph c t p nh t c T Ho t c a nó khi áp d c n t c thanh toán ti ng l i mô hình thanh toán truy n th giao d ch, các thao tác x lý d li u, quá trình chuy n ti t c c t hi n thông qua m c n i b ng các giao th c chuyên d ng

Ti n t (E-money, E-currency, Internet money, Digital money, Digital currency, Digital cash) là thu t ng v nhiên, có th hi u Ti n t là lo i ti quan n m ng máy tính và nh ng h th ng ch a giá tr d ng s (Digital stored value Systems)

Ti n t i dùng có th thanh toán khi mua hàng, ha n ti n, nh truy máy tính này (hay thi t b

Smart Card) t i máy tính khác (hay Smart Card khác)

(Serial) trên ti n gi y, dãy s c a ti n t là

M ng ti n t c phát hành b i m t t ch c (ngân hàng) và bi m ng ti n th n t có lo i n danh (anonymo nh danh (identified e-money)

Ti n n danh không ti t l nh danh c i dùng Tính c a ti n t n m t trên gi y Ti n t m t tài kho n, có th c tiêu xài hay chuy v t Có nhi u lo i ti n n danh, có lo i i v danh v i ngân hàng Có lo i n danh hoàn toàn, n danh v i t t c m i

Ti n t nh danh ti t l nh danh c tín d u v t c a ti n khi

M i lo i ti n trên l i chia thành 2 d ng: Tr c tuy n (online), không tr c tuy n

(offline) Tr c tuy n: là c n ph i bên th ki m soát

Không tr c tuy ki c giao d ch, mà kh tr c ti n bên th ba (ngân hàng)

Hi n nay, có 2 h th ng ti n t chính: th thông minh (Smart Card) hay ph n m m Tuy nhiên chúng có chung các n sau: tính an toàn, tí c l p, tính chuy ng, tính phân chia

3.2.3 Mô hình giao dch mua bán b ng ti n t 

Mô hình giao d ch mua bán b ng ti n t có 3 giao d ch v i tr ti c tr ti n

- Rút ti n: Ông A chuy n ti n c a mình t tài kho n c là Smart Card hay máy tính)

- Thanh toán: Ông A chuy n ti n t

- G i ti n: Ông B chuy n ti n nh c vào tài kho n c a mình ngân hàng

Mô hình cóth ể ự th c hi n b ng 2 cách: ệ ằ

+ Tr c tuy n (online): B liên l c v ki m tra tính h p l ng ti c khi thanh toán và phân ph i hàng Thanh toán và g i ti c ti ng th i Thanh toán tr c tuy n c n cho giao d ch có giá tr l n H th n yêu c u ph i liên l c v i ngân hàng trong su t m i l n giao d ch, vì th chi phí nhi n và th i gian)

+ Không tr c tuy n (offline): B liên l c v ki m tra tính h c ng ti c ti n hành sau quá trình thanh toán Nó phù h p cho nh ng giao d ch có giá tr th p

Các mô hình thanh toán điệ n t : ử

H th c hi n thanh toán cho khách hàng theo m t s cách, mà ti n m ng không th c H th c p kh ch v qua th i gian, b i mua tr ti n ngay, tr ti n sau hay tr ti c

- Mô hình tr ti n sau: Trong mô hình này, th m ti n m c rút kh i tài kho chuy n sang bên bán, x y ra ngay (pay-now) ho c s (pay-later) giao d ch mua bán Ho ng c a h th ng d a trên nguyên t c Tín d ng (Credit crendental) N c g i là mô hình mô ph ng Séc (Cheque - like model)

- Mô hình tr ti c: Trong mô hình này, khách hàng liên h v i ngân hàng (hay công ty môi gi - i c ch ng t do ngân hàng phát hà

Ch ng t ng ti n s này mang d u n c dùng b t c v i ngân hàng này i l y ch ng t c a ngân hàng, tài kho n c a khách hàng b tri t kh ng v i giá tr c a ch ng t y c khi s d ng ch ng t mua hàng và thanh toán

Ch ng t i do khách hàng t o ra, không ph i dành cho m cu c mua bán c th , mà do ngân hàng phát hành và có th dùng vào m i m thanh toán Vì có th s d ng gi n m là mô hình mô ph ng ti n m t (Cash-like model) i mua hàng t i c a hàng và thanh toán b ng ch ng t c a hàng s ki m tra tính h p l c a chúng, d a trên nh ng thông tin c bi t do ngân hàng t

C a hàng có th ch n m t trong hai cách: Ho c là liên h v chuy n vào tài kho n c a mình s ti c khi giao hàng (deposit-now), ho c là ch p nh n và liên h chuy n ti n sau vào th i gian thích h p (deposit-later) ng h p riêng c a mô hình mô ph ng ti n m (Electronic Cash)

Hi n nay, h u h t các d ch v mua bán hàng trên m u s d ng hình th c thanh toán b ng th tín d i dùng ch c n nh p c i dùng, mã s th , ngày h t h n c a th

Th c t hi n nay t i châu Âu, các gian l n v th trên Internet chi m kho ng 7% t ng s các giao d ch th , t l này châu Á là kho ng 10% T i Vi t Nam, d ch v th tín d ng m i s d ng cu l các giao d ch t ng s các giao d

Trên th gi i hi n nay, nhu c u v n t r t ph bi v h t n t v c gi i h t ra Vi c nghiên c u xây d ng các h th t m b o an toàn thông tin trong các d ch v n t là m nghiên c u c n thi t hi n nay

H th n t v m t k thu t chính là ng d ng các c a lý thuy t m t mã Mô hình thanh toán s d ng giao th c m m b o toàn cho vi c giao d ch gi a các bên tham gia

3.2.4 V n t  a) V   i s d ng ti n  c tính quan tr ng và ti n l i c c than ti n nói chung Tính c hi i tiêu ti n ph c l i d u v c a ai i v i ti n t gi i quy t v c bi t c a ch n t p mà không bi t n i dung c i ký sau này th y c p ch bi khi nào và c dù anh ta có th ki c ch m m

V a ngân hàng, h không th c m i liên h ng ti n t và ch s h u c a nó

CHAUM-FIAT-NAOR dùng ch B dùng ch ký mù Schnorr b) V gian ln giá tr  ng ting ti n) 

Vi ng ti n c t l i g i t ng ti n ghi giá tr ng ti n 50$ cùng v kh u tr 1$. ng ti n, nên h không th bi t gi i quy ng h p gian l n này, có hai cách. Cách 1: Ngân hàng dùng b khóa (khoá ký, khóa ki m tra ch ký) khác nhau cho m i lo i ti n N u có n giá tr ng ti n thì ph i có n b khoá khác nhau Ví d : v ng ti n giá tr 1$ thì dùng khoá k1 ng ti n 50$ thì dùng khoá k50 N u A gian l n t ng ti n 50$ v i khóa k1 ng ti n không h p l

Cách 2: Dùng giao th t và ch rút t ngân hàng m ng ti n giá tr T, ông A ph i t 1,C2, ,Cng ti n Ck cùng giá tr c g nh danh, khác nhau duy nh t gi a chú sê- ng ti n này, và g n ngân hà

Ngân hàng yêu c u ông A cung c kh k- k Ngân hàng kh m tra chúng N u t t c u h p l ng ti n còn l i Ci ng ti n mà ngân hàng không kh cho A

Ngân hàng có s m b o cao r ng ti n còn l i Ci p l , vì n u ông A g ng ti n không h p pháp trong s ng ti n, thì xác su t b hi n ít nh t là k-1/k Xác su t này càng cao n u k càng l n Tuy nhiên n u k quá l n thì h th ng x lý ph i nhi u d u và phli i tính toán nhi u. c) V tiêu xài mng ti n nhi u l  n (double - spending)

Ti n t có d ng s hoá, nên d dàng t o b n sao t b n g c Chúng t không th phân bi c gi ng ti ng ti ng ti u l n mà không b át hiph n.

H th ng ti n t ph i có kh a hay phát hi h ng ti n tiêu xài nhi u l gi i pháp khác nhau tu theo t ng h th ng ti n t

* Vi h thng Ti i n t c tuytr n: thông tin t t c nh ng ti n t i bán hàng liên l c t i ngân hàng, và h có th i bán hàng ng ti n nào còn kh c

N u ngân hàng báo r ng ti l p t c t ch u này gi i bá tra th tín d ng t i nh m bán hàng

* Vi h  thng Tin t không tr c tuy  n: Phát hi n vi u lng tic th c hi n b ng hai cách   

Mô hình giao d ch mua bán b ng ti n t

Mô hình giao d ch mua bán b ng ti n t có 3 giao d ch v i tr ti c tr ti n

- Rút ti n: Ông A chuy n ti n c a mình t tài kho n c là Smart Card hay máy tính)

- Thanh toán: Ông A chuy n ti n t

- G i ti n: Ông B chuy n ti n nh c vào tài kho n c a mình ngân hàng

Mô hình cóth ể ự th c hi n b ng 2 cách: ệ ằ

+ Tr c tuy n (online): B liên l c v ki m tra tính h p l ng ti c khi thanh toán và phân ph i hàng Thanh toán và g i ti c ti ng th i Thanh toán tr c tuy n c n cho giao d ch có giá tr l n H th n yêu c u ph i liên l c v i ngân hàng trong su t m i l n giao d ch, vì th chi phí nhi n và th i gian)

+ Không tr c tuy n (offline): B liên l c v ki m tra tính h c ng ti c ti n hành sau quá trình thanh toán Nó phù h p cho nh ng giao d ch có giá tr th p

Các mô hình thanh toán điệ n t : ử

H th c hi n thanh toán cho khách hàng theo m t s cách, mà ti n m ng không th c H th c p kh ch v qua th i gian, b i mua tr ti n ngay, tr ti n sau hay tr ti c

- Mô hình tr ti n sau: Trong mô hình này, th m ti n m c rút kh i tài kho chuy n sang bên bán, x y ra ngay (pay-now) ho c s (pay-later) giao d ch mua bán Ho ng c a h th ng d a trên nguyên t c Tín d ng (Credit crendental) N c g i là mô hình mô ph ng Séc (Cheque - like model)

- Mô hình tr ti c: Trong mô hình này, khách hàng liên h v i ngân hàng (hay công ty môi gi - i c ch ng t do ngân hàng phát hà

Ch ng t ng ti n s này mang d u n c dùng b t c v i ngân hàng này i l y ch ng t c a ngân hàng, tài kho n c a khách hàng b tri t kh ng v i giá tr c a ch ng t y c khi s d ng ch ng t mua hàng và thanh toán

Ch ng t i do khách hàng t o ra, không ph i dành cho m cu c mua bán c th , mà do ngân hàng phát hành và có th dùng vào m i m thanh toán Vì có th s d ng gi n m là mô hình mô ph ng ti n m t (Cash-like model) i mua hàng t i c a hàng và thanh toán b ng ch ng t c a hàng s ki m tra tính h p l c a chúng, d a trên nh ng thông tin c bi t do ngân hàng t

C a hàng có th ch n m t trong hai cách: Ho c là liên h v chuy n vào tài kho n c a mình s ti c khi giao hàng (deposit-now), ho c là ch p nh n và liên h chuy n ti n sau vào th i gian thích h p (deposit-later) ng h p riêng c a mô hình mô ph ng ti n m (Electronic Cash)

Hi n nay, h u h t các d ch v mua bán hàng trên m u s d ng hình th c thanh toán b ng th tín d i dùng ch c n nh p c i dùng, mã s th , ngày h t h n c a th

Th c t hi n nay t i châu Âu, các gian l n v th trên Internet chi m kho ng 7% t ng s các giao d ch th , t l này châu Á là kho ng 10% T i Vi t Nam, d ch v th tín d ng m i s d ng cu l các giao d ch t ng s các giao d

Trên th gi i hi n nay, nhu c u v n t r t ph bi v h t n t v c gi i h t ra Vi c nghiên c u xây d ng các h th t m b o an toàn thông tin trong các d ch v n t là m nghiên c u c n thi t hi n nay

H th n t v m t k thu t chính là ng d ng các c a lý thuy t m t mã Mô hình thanh toán s d ng giao th c m m b o toàn cho vi c giao d ch gi a các bên tham gia.

V n t 3.2.5 ti n t Brand

a) V   i s d ng ti n  c tính quan tr ng và ti n l i c c than ti n nói chung Tính c hi i tiêu ti n ph c l i d u v c a ai i v i ti n t gi i quy t v c bi t c a ch n t p mà không bi t n i dung c i ký sau này th y c p ch bi khi nào và c dù anh ta có th ki c ch m m

V a ngân hàng, h không th c m i liên h ng ti n t và ch s h u c a nó

CHAUM-FIAT-NAOR dùng ch B dùng ch ký mù Schnorr b) V gian ln giá tr  ng ting ti n) 

Vi ng ti n c t l i g i t ng ti n ghi giá tr ng ti n 50$ cùng v kh u tr 1$. ng ti n, nên h không th bi t gi i quy ng h p gian l n này, có hai cách. Cách 1: Ngân hàng dùng b khóa (khoá ký, khóa ki m tra ch ký) khác nhau cho m i lo i ti n N u có n giá tr ng ti n thì ph i có n b khoá khác nhau Ví d : v ng ti n giá tr 1$ thì dùng khoá k1 ng ti n 50$ thì dùng khoá k50 N u A gian l n t ng ti n 50$ v i khóa k1 ng ti n không h p l

Cách 2: Dùng giao th t và ch rút t ngân hàng m ng ti n giá tr T, ông A ph i t 1,C2, ,Cng ti n Ck cùng giá tr c g nh danh, khác nhau duy nh t gi a chú sê- ng ti n này, và g n ngân hà

Ngân hàng yêu c u ông A cung c kh k- k Ngân hàng kh m tra chúng N u t t c u h p l ng ti n còn l i Ci ng ti n mà ngân hàng không kh cho A

Ngân hàng có s m b o cao r ng ti n còn l i Ci p l , vì n u ông A g ng ti n không h p pháp trong s ng ti n, thì xác su t b hi n ít nh t là k-1/k Xác su t này càng cao n u k càng l n Tuy nhiên n u k quá l n thì h th ng x lý ph i nhi u d u và phli i tính toán nhi u. c) V tiêu xài mng ti n nhi u l  n (double - spending)

Ti n t có d ng s hoá, nên d dàng t o b n sao t b n g c Chúng t không th phân bi c gi ng ti ng ti ng ti u l n mà không b át hiph n.

H th ng ti n t ph i có kh a hay phát hi h ng ti n tiêu xài nhi u l gi i pháp khác nhau tu theo t ng h th ng ti n t

* Vi h thng Ti i n t c tuytr n: thông tin t t c nh ng ti n t i bán hàng liên l c t i ngân hàng, và h có th i bán hàng ng ti n nào còn kh c

N u ngân hàng báo r ng ti l p t c t ch u này gi i bá tra th tín d ng t i nh m bán hàng

* Vi h  thng Tin t không tr c tuy  n: Phát hi n vi u lng tic th c hi n b ng hai cách   

Cách 1: T o th c g ng nh d ti n t c tiêu xài qua Th N i s h u Th sao ché tiêu xài nó l n hai, thì chip s phát hi ng này, và không cho ph giao d ch ng s g không th c d u, tr khi hli phá hu Th

Cách 2: D a vào c u trúc c a ti n t và nh ng giao th c m th truy v t tìm ra k gian l u l n)

N i dùng bi t r ng h s b x t i khi c tính gian l n, v lý thuy t thì hà ng gian l n s gi u thu n l i c c bi t H th ng có th c phát tri n trên ph n m m (software) th ch

V ớ i Ti ền điệ n t ử Đị nh danh - Không tr c tuy n (Identified offline): ự ế

D truy v t, tìm ra k gian l n nh danh c i dùng ti nh danh c i dùng s m i l

Thông tin chi ti t m i l n giao d c g ng ti n t c chuy n t i khác ng ti n chuy n t i ngân hàng, h ki m tra d li u c ti n này có b n không? Ngân hàng s d ng nh l n theo v t c a nh ng giao d ch, phát hi

V ớ i Ti ền điệ n t n danh - Không tr c tuy ử ẩ ự ế n (Anonymous Offline): ng h p này ph c t p nh ng ti n

H th ng ph i v m b o tính n danh c i s d ng ti n, v m th truy v ng h n)

Gi i pháp là g ng ti n m i l tin này s m i l n giao d ng ti ki d li ng ti ngân hàng phát hi n ti nh danh c a k gian l

Thông tin tích lu ng h p này ch có th l n theo d ch n ng ti hàng m i có th nh danh c i tiêu ti n.

N ng ti n n danh không b n, thì ngân hàn nh danh c i tiêu ti ng ti ng ti n v n là n danh)

3.2.5   ti n t Brand  c xây d ng d a trên ch ký s trong nhóm c p nguyên t Gq là nhóm con c p q c a Zp nguyên t tho mãn q|(p-1) Ngân hàng kh i t o 5 thành ph n: (g, h, g1, g2, d)

- (g, h)  G q (generator tuple): khoá công khai c c dù ký giao th c rút ti n, x là khoá bí m t c a ngân hàng x = loggh (h=g x )

- Ph n t sinh gi d (khác g 1 và g2 m b o r nh danh c i s không b phát hi n trong giao th c thanh toán a) Kh i t o tài kho n 

- Alice t o ng u nhiên u1, u2 Zq, tính  I = g 1 u 1 g 2 u 2 , chuy n I n ngân hàng

- g 1 u 1 g 2 I u = 2 nh danh c a Alice và s tài kho n,

1, u2 t u ng h ng ti n hai l n, ngân hàng có th tìm ra (u1, u2) và tính c I, t nh danh k gian l n.

Ch ứ ng minh i di n tài kho đạ ệ ả n:

Khi Alice rút ti u tiên ph i ngân hàng, b ng cách minh v i ngân hàng là s rút ti n trong tài kho n mà Alice s h u. c dùng chng minh tri th c c a m  

Alice ph i ch ng minh cho ngân hàng r ng: Alice bi t u1 và u2 (vì Alice là ch s h u tài kho 1, u2 cho ngân hàng t l giá tr u

Quá trình xác th c ti

+ Alice ch n ng u nhiên w1, w2 Z qvà g i y = g 1 w 1 g 2 w 2 n ngân hàng

+ Ngân hàng th ki h u b ng cách ch n ng u nhiên rCZ q và g n Alice

+ Alice tính r 1 = w1 + Cru1 mod q, r2 = w2 + Cru2 mod , gq n ngân hàng

+ Ngân hàng ch p nh n xác th khi: yI c r = g 1 r 1 g 2 r 2 g 1 u 1 gI = 2 u 2

 N u Alice không bi t 1u u, 2 i di n c a I), thì Alice không th tính t o ra r1 r, 2 cho ngân hàng ki m tra

N u xác th c ch p nh n, thì quá trình rút ti c ti

+ Ngân hàng tr m ng ti ng t tài kho n Alice Ngân hàn c m = Id (d là ph n t sinh và công khai) Ngân hàng g z = m x , a = g w , b = m w c ch n ng u nhiên t Zq, x là khoá bí m t c a ngân hàng)

+ Alice ch n 3 s ng u nhiên s Z q *; u, v  Z q s = (Id) s = g 1 u 1 s g 1 u 2 s d s

Tách ng u nhiên: v i s = z1 + z2 mod tính: q

+ Alice ng c u c'mod q , g n ngân hàng

+ c r = xc + w mod q, g i r cho Alice, ghi c kho n c a Alice Alice ch p nh n n u ki m tra th y g r = h c a và m r = z c ru + v mod q ng ti n t th t s

Sign(A, B) v i Sign(A, B) = (z ký c nào chúng ta có th bi c giá tr c a t ng ti n gi i quy t v này:

Cách 1: Ngân hàng s d ng m t khoá công khai cho m i lo i ti n ng ti n khác bi t thì ngân hàng ph i công khai khoá công khai k: (g1, h1) (gk, hk)

Cách 2: Ch n k ph n t sinh gi (d khai d1 k M i ph n t bi u hi n giá tr c a m

 N u Ngân hàng không bi t x, thì ngân hàng không th t o ra r cho Alice ki m tra

Khi Alice mu n mua hàng hay s d ng d ch v c c tiên Alice ph i g i ti c th c hi n th

V y, ngân hàng không 1, u2c u ng h p m tra ch ký c a ngân hàng si không N thách Alice b ng cách g i Zq*, c không c n thi t là c s ng m b o là duy nh t trong m i l n thanh toán c = H0 (A, B, Ib, date/time), v nh danh c a Bob, date/time là nhãn th gian c a giao d ch, H0

+ Alice ph n h i v i: r1 = x1 + cx2 mod q r2 = y1 + cy2 mod q r3 = z1 + cz2 mod q

+ Bob ki m tra, n u g 1 r 1 g 2 r 2 d r 3 = AB c thì ch p nh n thanh toán

Ta có: g 1 r 1 g 2 r 2 d r 3 g 1 x 1  cx 2 g 2 y 1  cy 2 d z 1  cz 2 (g1 x 1 g2 y 1 d z 1 )(g1 x 2 g2 y 2 d z 2 ) c c

 N u Alice không bi t 1 x y, 1 z, 1 x, 2 y, 2 z, 2, thì Alice không th t o ra 1 r r, 2 r, 3 cho Bob ki m tra

+ Bob g i thông tin thanh toán (A, B, Sign (A, B)), c, r 1 , r2 và r3 n ngân hàng

+ Ngân hàng ki m tra ch ký có chính ng ti

+ Bob th thách Alice b ng giá tr c = H 0 (A, B, Ib, date/time)

+ N u t t c u tho mãn, Ngân hàng g i ti n vào tài kho n c a Bob

3.3   t m t s k thu n t xa (c trong b phi n t - Electronic Voting) C tri gi bí m t lá phi u khi truy n t xa t i ban ki m phi u b ng cách mã hoá n i dung lá phi u Theo k thu ng c m phi u có th c k t qu ph i gi i mã n i dung lá phi u V n y sinh là c tri ph i ch ban ki m phi u r ng lá phi u c a mình là h p l    n i dung lá phi u thì  

c ti t l  v i h th c hi u này, hi i ta dùng ng minh không ti t l -knowledge proof) Chúng tôi trì th c hi n b phi u lo Chn 1 trong k 3.3.1  b phi u truy n thng

Trong l ch s th gi t nhi u cu c b u c , nh ng cu c b u c vai trò quan tr ng trong vi c xác l p các th ch chính tr c a các qu c gia t l n n nh Trong th gi i hi i, vi c b phi u b u qu c h i là m t trong s nh s ki n quan tr ng nh t c c Chính vì v s c vào vi c c i ti c b u c , làm cho các cu c b u c ng tr c b u c i theo t b c a xã h t c a m t cu c b u c k :

+ Tính cht 1: Quy c b phi u: Ch có nh i có quy n b ph m c tham gia Và m i ch c b phi u không quá m t l n Cu phi c th c hi nh i có qu ki n thu n l th c hi n quy n c a mình

+ Tính ch t 2: Tính bí m t: Trong m t cu c b phi i b phi u có th yên tâm là không ai có th phi vi c tr thù nh i b m

+ Tính cht 3: K t qu chính xác: M i cá nhân có quy n ki m tra cu c b u c và có kh n nh ng sai ph m trong quá trình b u c so v i th c ng nh c quy n ki m c tri và ban ki m phi u N u có th thì ph i cung c gi các sai ph m m t cách hi u qu

Hi n t các cu c b u c v c th c hi n theo cách truy

Tuy nhiên v i t phát tri n nhanh chóng c a công ngh xu th th c hi n t c s hoá cu c b u c c truy n th u t t y u s ph i di

Sơ đồ b phi u tr ỏ ế uy ề n th ng: ố

Khi b phi c truy n th ng, ta mang gi y t cá nhâ phi u xác minh quy n b phi u xác th c lên lá phi b phi u, c t gi y t y lá phi

Công vi c cu n vào m t lá phi ng v

Quá trình b phi u truy n th c coi là n c danh n u nh u tuân th quy trình

T b phi u truy n th ng, vi c b phi u có th phi u, ki m phi u.

M t s khái ni m

Nghiên c u v phi t ch quan tr cho s ti n b c a xã h i dân ch N u m t h th ng b phi tin c y, nó s c s d thu th p ý ki n c a m nhi u quy nh v chính tr và xã h i thông qua h th ng t ph c các tính ch phi

M t quy trình b phi u g m m t s n) Hi n na k thu t m th c hi n h p lý trong t n

Trong khóa lu i v n C tri (CT ử thăm dò tớ i Ban ki m phi u (Ban KP) ể ế b phi u lo Chn 1 trong k i ta s d ng k thu ng

(Homomorphic Encryption Secret Sharing), k thu ng minh không ti t l thông -knowledge proof) b) n C tri chuy n lá phi u t i Ban ki m phi u       ng, khi C tri (CT) chuy n lá phi u t phi u (Ban KP) thì h ch c n mã hóa n i dung lá phi Vì ti p theo Ban K ch c n gi i mã n i dung lá phi c k t qu (ki m phi u) c t có th x y ra các tình hu ng sau:

- Ban KP hay m t nhóm thành viên Ban KP không trung th phi s a l i n i dung lá phi u sau khi gi phi u) kh c ph i ta s d ng k thu

Chia s bí m i gi i pháp này Ban KP không ph i gi i mã t ng lá phi v c k t qu

- b m công khai ki m phi u, lá phi i B c niêm y y nhìn trên b ng niêm y t này, C tri s phi u c a mình và h có th kh c ph c tìn i ta dùng m i xác minh trung th - honest verifier) làm tr gian gi a C tri và Ban KP C tri g i lá phi u t xa t xác minh trung th c Sau khi xác minh lá phi u h p l

(mã hóa lá phi u l n th 2), ti i nó v Ban KP Trên b ng niêm y t công khai, C tri không th nh n ra lá phi u c có th

Khi gi i quy t 2 tình hu ng trên l i xu t hi n hai v khác:

- M t là C tri ph i ch i xác minh trung th c bi t lá c a h là h p l , t c là n i dung lá phi u ch ghi m t trong s k l a ch n (lo i l a ch n 1 trong k n ph i ch ra lá phi u ghi rõ l a ch n n ch y g ng minh không ti t l minh này, n i dung lá phi u không b ti t l , trong khi m b ng ch ng c r ng lá phi u này là h p l

- i xác minh trung th c ph i ch ng minh cho C tri, Ban t r ng lá phi u b n h p l r ng anh ta s h u giá tr  i xác minh trung ng minh không ti không c n ph i ti t l chính giá tr  n C tri chuy n lá phi u t i Ban ki m phi u: Giao th c 1 ứ : C tri mã hóa lá phi u b ng h mã hóa Elgamal, C tri g i nó t i i xác minh trung th c ng minh không ti t l h p l c a lá phi

Giao th c 2 ứ : Sau khi xác minh lá phi u h p l i xác minh trung th c làm u và g i nó v ng minh không ti cho tính h p l c a lá phi th ch ng minh quy n s tr bí m t  u

Ch ng minh tính h p l c a lá phi u (x, y) (Giao th c 1)

n C tri (CT) chuy n lá phi u t i Ban ki m phi KP), ph i th c hi n giao th c 1 T c là C tri s mã hóa lá phi u b ng h mã hóa

Elgamal, lá phi c g i t i xác minh trung th c k ng minh không ti t l p l c a lá phi

Gi s trong cu c b u c u c i là ng c viên th i trong danh sách thì lá phi u h p l ế ợ ệ ph i ghi Gi v hóa Elgamal, l a ch n Gi c mã hóa thành (x, y) = (g, h Gi) y C tri mu n ch ng minh v i xác minh trung th c r ng lá phi (x, y) là h p l , thì anh ta ph i ch ra m ng th

(logg x = logh (y/G1))   (logg x = logh (y/Gk)) (1) ch ng minh (1) mà không b l Gi, C i xác minh trung th c th ng nh t dùng giao th ng minh không ti t l

Ta có: lá phi u (x, y) loggx = logh(y/G1)  loggx = logh(y/Gi) loggx = logh(y/Gk)

Vì lá phi u h p l là lá phi nh (là ch ch n 1 ng c viên s ng c c ch n là ng c viên th i ch ng minh lá phi u h p ch c n ch ng th c th ng th loggx = logh(y/Gi)

 Ch ng minh tính h p l c a lá phi , h Gi)

Gi s cu c b u c a ch n là 1 ho c 2 l a ch n ng c viên th i là Gi ch ng minh tính h p l c a lá phi u, C tri ph i ch ng minh:

(loggx = logh(y/Gi))٧ (loggx = logh(y/G2))  (loggx = logh(y/G3)) (1) ch ng minh (1), C tri và i xác minh trung th c th ng nh t dùng giao th ng minh không ti t l

Ch n ph n t sinh g = 3, = 5, khóa bí m t s = 7, khóa công khai h = g s =3 7

Ký hi u 3 ng c viên G1 = 1, G2 = 2, G3 = 3 Gi s c tri ch n Gi = 2

3.3.4 Chng minh quy n s  hu giá tr bí m t β (Giao thc 2) n C tri (CT) chuy n lá phi u t i Ban ki m phi KP) ph i th c hi n Giao th c 2 T c là sau khi xác minh lá phi u c a C tri là h p l u và g i nó v minh không ti t l p l c a lá phi u thông qua c p (u, v) v bí m t ậ β ch ng minh lá phi u b n h p l i xác min i xác minh TT không mu l Có m t giao th qu i xác minh trung th c làm vi c này: giao th i xác minh trung th c i ch i ki m tra (V

N u P không bi t giá tr thì P không th t cho V

 i ch ng minh P ch n g = 3, s = 7, h = g s = 3 7 Có = 5 s d ng (u,  v) = (g  , h  ) = (3 5 , (3 7 ) 5 ), c p s tri

P ch ng minh v i V r ng mình s h u  mà không mu l giá tr 

N m o r  , h  )t  t o (u, v) = (g t c ki m th g r = au c h, r = bv c th c hi n c Vì v giao th c trên m i tin r i xác minh trung th c u

3.3.5 n c tri chuy n lá phi  n ban ki m phi 

Trong m c b.3.3.2 khóa lu n C tri (CT phi u t i Ban ki m phi c th c hi n b ng Giao th c 1 ứ th ứ c 2, ta g i là  m g i là p th c hi n này b ng 2 giao th c Giao th c 1 gi và giao th i xác minh trung th c, xác minh lá phi u c a C tri là h p l , s khi C i xác minh trung th c s h u giá tr thì chính C u và g i nó v i xác minh trung t phi u và g i nó v c 2 c ngh : m i l n x lý m t lá phi u, t i m c t không tho mãn, công vi c x lý d ng l i v i lá phi chuy n sang lá phi ti p theo

[3].Oded Goldreich (2010), A Short Tutorial of Zero-Knowledge,Weizmann

Institute of Science, Rehovot, Israel.

[4].O Goldreich (1993) A Uniform Complexity Treatment of Encryption and

Zero-Knowledge Journal of Cryptology, Vol 6, No 1, pages 21-53.

[5].Oded Goldreich, Yair Oren (1994), Definitions and Properties of Zero-

Knowledge Proof Systems, Journal of Cryptology, International Association for Cryptologic Research.

[6].S Goldwasser, S Micali (1984), Probabilistic Encryption, Journal of

Computer and System Science, Vol 28, No 2, pages 270-299, 1984.

[8].Lum Jia Jun, Brandon (2010), Implementing Zero-Knowledge Authentication with Zero Knowledge (ZKA_wzk), PyCon Asia-Pacific.

[9].Byoungcheon Lee (2002), Zero-Knowledge Proofs, Digital Signature

Variants, and Their Applications, Joongbu University, dept of Information

1 Gii thi u  ng giao th c 1: ch ng minh tính h p l c a lá phi th i xác minh TT ch ng minh quy n s h u giá tr bí m t  trong n d ng Zero knowledge proof trong b phi n t c vi t b ng ngôn ng trình PHP

2 Các thành ph n c  ng minh tính h p l c a lá phi u mô ph ng giao th ứ c 1:

- Nh p các tham s mã hóa lá phi u.

- Tính toán các tham s trung gian

- Ki m tra tính h p l c a lá phi u. ng minh quy n s h u giá tr bí m t  mô ph ng giao th

- Tính toán các tham s trung gian

- Ki i xác minh trung th c có gi giá tr bí m

C tri ch ng minh tính h p l c a lá phi i xác minh TT

c 2: Tính toán các tham s trung gian

c 3: i xác minh TT s ki m tra các tham s và ti p t c mã hóa lá phi u l n 2 và g i cho Ban KP

- Ki m tra các c p giá tr (X, Y); (A, B); (D, R);

3.2 Giao th c 2 ứ i xác minh trung th c ch ng minh lá phi u làm mù g n Ban ki m phi u p l :

c 1: i xác minh TT nh p các tham s g i cho Ban ki m phi u giá tr w thông qua (a, b):

c 2: Ban ki m phi i giá tr ng i x th c s tính toán giá tr i r cho Ban ki m phi u:

- Nh p giá tr ng u nhiên c;

c 3: Ban ki m phi u ki m tra l i k t qu nh c, n làm mù l n 2 hoàn toàn h p l , n m phi u s nh n lá phi

1 C tri ch ng minh tính h p l c  a lá phi u  :

$r = array(1 => "2", 2 => "3", 4 => "1"); if (isset($_POST["w"])) //kiem tra gia tri bien w

$r[$Gi] = $w - $alpha * $d[$Gi]; if (isset($_POST["s"]))

{ toán giá R) =   ($d[1], $r[1]) ($d[2], $r[2]) ($d[$Gi], $r[$Gi]) ($d[4], $r[4]);

i xác minh trung th c ch ng minh có gi tham s bí m    t β :

//Lay cac gia tri nhap vao tu Form va tinh toan h, (u,v), (a,b), r;

$w = $_POST["w"]; //$w = rand(2,5); //chon gia tri ngau nhien w = 6;

$c = $_POST["c"]; //$c = rand(1,5); //chon ngau nhien c = 4;

{ if(pow($g,$r) == $a*pow($u,$c) && pow($h,$r) == $b*pow($v,$c)) {

n c tri chuy n lá phi n ban ki m phi

Trong m c b.3.3.2 khóa lu n C tri (CT phi u t i Ban ki m phi c th c hi n b ng Giao th c 1 ứ th ứ c 2, ta g i là  m g i là p th c hi n này b ng 2 giao th c Giao th c 1 gi và giao th i xác minh trung th c, xác minh lá phi u c a C tri là h p l , s khi C i xác minh trung th c s h u giá tr thì chính C u và g i nó v i xác minh trung t phi u và g i nó v c 2 c ngh : m i l n x lý m t lá phi u, t i m c t không tho mãn, công vi c x lý d ng l i v i lá phi chuy n sang lá phi ti p theo

[3].Oded Goldreich (2010), A Short Tutorial of Zero-Knowledge,Weizmann

Institute of Science, Rehovot, Israel.

[4].O Goldreich (1993) A Uniform Complexity Treatment of Encryption and

Zero-Knowledge Journal of Cryptology, Vol 6, No 1, pages 21-53.

[5].Oded Goldreich, Yair Oren (1994), Definitions and Properties of Zero-

Knowledge Proof Systems, Journal of Cryptology, International Association for Cryptologic Research.

[6].S Goldwasser, S Micali (1984), Probabilistic Encryption, Journal of

Computer and System Science, Vol 28, No 2, pages 270-299, 1984.

[8].Lum Jia Jun, Brandon (2010), Implementing Zero-Knowledge Authentication with Zero Knowledge (ZKA_wzk), PyCon Asia-Pacific.

[9].Byoungcheon Lee (2002), Zero-Knowledge Proofs, Digital Signature

Variants, and Their Applications, Joongbu University, dept of Information

1 Gii thi u  ng giao th c 1: ch ng minh tính h p l c a lá phi th i xác minh TT ch ng minh quy n s h u giá tr bí m t  trong n d ng Zero knowledge proof trong b phi n t c vi t b ng ngôn ng trình PHP

2 Các thành ph n c  ng minh tính h p l c a lá phi u mô ph ng giao th ứ c 1:

- Nh p các tham s mã hóa lá phi u.

- Tính toán các tham s trung gian

- Ki m tra tính h p l c a lá phi u. ng minh quy n s h u giá tr bí m t  mô ph ng giao th

- Tính toán các tham s trung gian

- Ki i xác minh trung th c có gi giá tr bí m

C tri ch ng minh tính h p l c a lá phi i xác minh TT

c 2: Tính toán các tham s trung gian

c 3: i xác minh TT s ki m tra các tham s và ti p t c mã hóa lá phi u l n 2 và g i cho Ban KP

- Ki m tra các c p giá tr (X, Y); (A, B); (D, R);

3.2 Giao th c 2 ứ i xác minh trung th c ch ng minh lá phi u làm mù g n Ban ki m phi u p l :

c 1: i xác minh TT nh p các tham s g i cho Ban ki m phi u giá tr w thông qua (a, b):

c 2: Ban ki m phi i giá tr ng i x th c s tính toán giá tr i r cho Ban ki m phi u:

- Nh p giá tr ng u nhiên c;

c 3: Ban ki m phi u ki m tra l i k t qu nh c, n làm mù l n 2 hoàn toàn h p l , n m phi u s nh n lá phi

Mã ngu

1 C tri ch ng minh tính h p l c  a lá phi u  :

$r = array(1 => "2", 2 => "3", 4 => "1"); if (isset($_POST["w"])) //kiem tra gia tri bien w

$r[$Gi] = $w - $alpha * $d[$Gi]; if (isset($_POST["s"]))

{ toán giá R) =   ($d[1], $r[1]) ($d[2], $r[2]) ($d[$Gi], $r[$Gi]) ($d[4], $r[4]);

i xác minh trung th c ch ng minh có gi tham s bí m    t β :

//Lay cac gia tri nhap vao tu Form va tinh toan h, (u,v), (a,b), r;

$w = $_POST["w"]; //$w = rand(2,5); //chon gia tri ngau nhien w = 6;

$c = $_POST["c"]; //$c = rand(1,5); //chon ngau nhien c = 4;

{ if(pow($g,$r) == $a*pow($u,$c) && pow($h,$r) == $b*pow($v,$c)) {

Ngày đăng: 17/02/2024, 22:11

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w