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 nim: 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 cht chc 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
Chng 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 thng CMKTLTT hoàn thing cu 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 mo 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 thng CMKTLTT hoàn thin:
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 thng 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 cu 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 thng ch th ng c u
Phát biu: H th ng ch ng c th ch ng minh không ti t l thông tin hoàn thi n.
Chng 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 nic 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 -
* Chng 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 thc xác thc 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 thc 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 nin 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 dch 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 ln giá tr ng ting 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 mng 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
* Vi h thng Ti i n t c tuytr 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
* Vi h thng Tin t không tr c tuy n: Phát hi n vi u lng tic 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 ln giá tr ng ting 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 mng 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
* Vi h thng Ti i n t c tuytr 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
* Vi h thng Tin t không tr c tuy n: Phát hi n vi u lng tic 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 chng 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 rCZ 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 Chn 1 trong k 3.3.1 b phi u truy n thng
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 cht 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 cht 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 Chn 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 Chng minh quy n s hu giá tr bí m t β (Giao thc 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 Gii 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 Gii 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)) {