MỤC LỤC
LỜI NÓI ĐẦU 3
PHẦN I: KHÁI QUÁT CHUNG VỀ LUẬT THƯƠNG MẠI VIỆT NAM 4
I. HOÀN CẢNH VÀ MỤC ĐÍCH RA ĐỜI 4
1. Hoàn cảnh ra đời của Luật thương mại Việt Nam. 4
2. Mục đích ra đời của Luật thương mại Việt Nam 5
II. VAI TRÒ CỦA LUẬT THƯƠNG MẠI VIỆT NAM 6
1. Bảo đảm quản lý nhà nước đối với hoạt động thương mại. 6
2. Thực hiện quyền tự do kinh doanh của công dân trên lĩnh vực thương mại. 6
3. Thực hiện quyền bình đẳng trước pháp luật của thương nhân thuộc
mọi thành phần kinh tế trong các hoạt động thương mại. 7
4. Qui định những điều kiện đối với thương nhân trong
các hoạt động thương mại 7
III. PHẠM VI ĐIỀU CHỈNH CỦA LUẬT THƯƠNG MẠI VIỆT NAM VỚI TƯ CÁCH LÀ NGUỒN LUẬT ĐIỀU CHỈNH HỢP ĐỒNG MUA BÁN GIỮA THƯƠNG NHÂN VIỆT NAM VỚI THƯƠNG NHÂN NƯỚC NGOÀI. 8
PHẦN II: CHẾ ĐỘ TRÁCH NHIỆM DO VI PHẠM HỢP ĐỒNG 9
I. CÁC YẾU TỐ CẤU THÀNH TRÁCH NHIỆM DO VI PHẠM
HỢP ĐỒNG MUA BÁN NGOẠI THƯƠNG. 9
1. Thụ trái có hành vi vi phạm pháp luật 9
2. Phải có lỗi của bên vi phạm hợp đồng. 10
3. Trái chủ bị thiệt hại vật chất, thiệt hại về tài sản hoặc
các quyền có giá trị tài sản. 11
4. Có mối quan hệ trực tiếp giữa hành vi vi phạm hợp đồng
và thiệt hại vật chất. 12
II. CÁC CHẾ TÀI ÁP DỤNG CHO VIỆC VI PHẠM HỢP ĐỒNG
TRONG HOẠT ĐỘNG MUA BÁN HÀNG HÓA THEO
LUẬT THƯƠNG MẠI VIỆT NAM. 12
1. Buộc thực hiện đúng hợp đồng 13
2. Phạt vi phạm 15
3. Bồi thường thiệt hại. 17
4. Chế tài hủy hợp đồng. 21
5. Mối quan hệ giữa các chế tài theo Luật thương mại Việt Nam. 25
III. CÁC TRƯỜNG HỢP MIỄN TRÁCH DO VI PHẠM HỢP ĐỒNG
TRONG HOẠT ĐỘNG MUA BÁN HÀNG HÓA CỦA THỤ TRÁI. 27
1. Miễn trách khi gặp các trường hợp đã được thỏa thuận trong hợp đồng. 27
2. Miễn trách khi gặp bất khả kháng. 27
PHẦN III: HẠN CHẾ CỦA CÁC QUY ĐỊNH VỀ CHẾ ĐỘ TRÁCH NHIỆM DO VI PHẠM HỢP ĐỒNG MUA BÁN THEO LUẬT THƯƠNG MẠI VIỆT NAM. KIẾN NGHỊ VÀ GIẢI PHÁP 31
I. NHỮNG HẠN CHẾ CỦA CÁC QUY ĐỊNH VỀ CHẾ TÀI THƯƠNG MẠI THEO LUẬT THƯƠNG MẠI VIỆT NAM. KIẾN NGHỊ VÀ GIẢI PHÁP. 32
1. Về mối quan hệ giữa chế tài buộc thực hiện đúng hợp đồng
và các chế tài khác. 32
2. Về chế tài phạt vi phạm 37
3. Về chế tài bồi thường thiệt hại. 39
4. Về chế tài hủy hợp đồng. 40
II. NHỮNG HẠN CHẾ CỦA CÁC QUY ĐỊNH VỀ CÁC TRƯỜNG HỢP MIỄN TRÁCH DO VI PHẠM HỢP ĐỒNG MUA BÁN NGOẠI THƯƠNG THEO LUẬT THƯƠNG MẠI VIỆT NAM - KIẾN NGHỊ VÀ GIẢI PHÁP. 42
1. Cần quy định một số trường hợp phổ biến như đình công, lệnh cẫm
xuất nhập khẩu của Nhà nước là những trường hợp bất khả kháng để làm căn cứ miễn trách nhiệm. 42
2. Giấy chứng nhận bất khả kháng như thế nào được coi là hợp lý. 44
3. Cần quy định thêm trường hợp miễn trách khi người thứ ba có quan hệ hợp đồng với bên vi phạm gặp bất khả kháng. 45
KẾT LUẬN 46
TÀI LIỆU THAM KHẢO 47
64 trang |
Chia sẻ: maiphuongtl | Lượt xem: 1586 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Đồ án Lược đồ chữ ký chống chối bỏ có người xác nhận, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
B, C) = (AÙB)Ú(AC)
g(A, B, C) = (AÙB)Ú(AÙC)Ú(BÙC)
h(A, B, C) = A Å B Å C
Ta ký hiÖu c¸c h»ng sè:
K1 = 0x5a827999
K2 = 0x6ed9eba1
C¸c biÕn Xi, i =
B¶ng ch©n lý cña 3 hµm:
A
B
C
f(A, B, C)
g(A, B, C)
h(A, B, C)
0
0
0
0
0
0
0
0
1
1
0
1
0
1
0
0
0
1
0
1
1
1
1
0
1
0
0
0
0
1
1
0
1
0
1
0
1
1
0
1
1
0
1
1
1
1
1
1
3 vßng Round1, Round2, Round3 ®îc m« t¶ theo b¶ng sau:
Round1:
1
A = (A + f(B, C, D) + Xo)<<3
2
D = (D + f(A, B, C) + X1)<<7
3
C = (C + f(D, A, B) + X2)<<11
4
B = (B + f(C, D, A) + X3)<<19
5
A = (A + f(B, C, D) + X4)<<3
6
D = (D + f(A, B, C) + X5)<<7
7
C = (C + f(D, A, B) + X6)<<11
8
B = (B + f(C, D, A) + X7)<<19
9
A = (A + f(B, C, D) + X8)<<3
10
D = (D + f(A, B, C) + X9)<<7
11
C = (C + f(D, A, B) + X10)<<11
12
B = (B + f(C, D, A) + X11)<<19
13
A = (A + f(B, C, D) + X12)<<3
14
D = (D + f(A, B, C) + X13)<<7
15
C = (C + f(D, A, B) + X14)<<11
16
B = (B + f(C, D, A) + X15)<<19
Round2:
1
A = (A + g(B, C, D) + Xo + K1)<<3
2
D = (D + g(A, B, C) + X4 + K1)<<5
3
C = (C + g(D, A, B) + X8 +K1)<<9
4
B = (B + g(C, D, A) + X12 + K1)<<13
5
A = (A + g(B, C, D) + X1 + K1)<<3
6
D = (D + g(A, B, C) + X5 + K1)<<5
7
C = (C + g(D, A, B) + X8 +K1)<<9
8
B = (B + g(C, D, A) + X13 + K1)<<13
9
A = (A + g(B, C, D) + X2 + K1)<<3
10
D = (D + g(A, B, C) + X6 + K1)<<5
11
C = (C + g(D, A, B) + X10 +K1)<<9
12
B = (B + g(C, D, A) + X14 + K1)<<13
13
A = (A + g(B, C, D) + X3 + K1)<<3
14
D = (D + g(A, B, C) + X7 + K1)<<5
15
C = (C + g(D, A, B) + X11 +K1)<<9
16
B = (B + g(C, D, A) + X15 + K1)<<13
Round3:
1
A = (A + h(B, C, D) +X0 + K2)<<3
2
D = (D + h(A, B, C) + X8 + K2)<<9
3
C = (C + h(D, A, B) + X4 + K2)<<11
4
B = (B + h(C, D, A) + X12 + K2)<<15
5
A = (A + h(B, C, D) +X2 + K2)<<3
6
D = (D + h(A, B, C) + X10 + K2)<<9
7
C = (C + h(D, A, B) + X6 + K2)<<11
8
B = (B + h(C, D, A) + X14 + K2)<<15
9
A = (A + h(B, C, D) +X1 + K2)<<3
10
D = (D + h(A, B, C) + X9 + K2)<<9
11
C = (C + h(D, A, B) + X5 + K2)<<11
12
B = (B + h(C, D, A) + X13 + K2)<<15
13
A = (A + h(B, C, D) +X3 + K2)<<3
14
D = (D + h(A, B, C) + X11 + K2)<<9
15
C = (C + h(D, A, B) + X7 + K2)<<11
16
B = (B + h(C, D, A) + X15 + K2)<<15
Ch¬ng IV
Ch÷ Ký Chèng Chèi Bá
IV.1. Giíi thiÖu
Ch÷ ký chèng chèi bá ®îc c«ng bè bëi Chaum vµ van Antwerpen vµo n¨m 1989. Nã cã mét sè nÐt riªng míi l¹ rÊt thó vÞ. Quan träng nhÊt trong sè ®ã lµ ch÷ ký kh«ng thÓ kiÓm tra khi kh«ng cã sù céng t¸c cña ngêi ký, Bob.
Sù b¶o vÖ nµy cña Bob ®Ò phßng kh¶ n¨ng ch÷ ký trong tµi liÖu cña anh ta bÞ sao chÐp vµ ph©n bè bëi thiÕt bÞ ®iÖn tö mµ kh«ng cã sù ®ång ý cña anh ta. VÝ dô, Bob cã mét phÇn mÒm vµ ch÷ ký kÌm theo ®îc t¹o ra nhê thuËt to¸n cña ch÷ ký sè th«ng thêng. Nh vËy, sÏ kh«ng tr¸nh khái trêng hîp phÇn mÒm ®ã bÞ sao chÐp mµ Bob kh«ng biÕt. Ngêi mua sÏ kiÓm tra ch÷ ký kÌm theo phÇn mÒm nhê thuËt to¸n kiÓm tra c«ng khai Ver vµ c«ng nhËn ®ã lµ ch÷ ký ®óng. V× nh chóng ta ®· biÕt b¶n sao cña ch÷ ký sè lµ ®ång nhÊt víi b¶n gèc. §¬ng nhiªn nh vËy Bob ®· bÞ mÊt b¶n quyÒn. §Ó tr¸nh ®iÒu bÊt lîi ®ã Bob ®· dïng ch÷ ký sè chèng chèi bá. Sù kiÓm tra sÏ thµnh c«ng khi thùc hiÖn giao thøc hái - ®¸p.
Lîc ®å ch÷ ký chèng chèi bá gåm 3 phÇn: thuËt to¸n ký, giao thøc kiÓm tra, giao thøc chèi bá.
IV.2. Lîc ®å ch÷ ký chèng chèi bá
IV.2.1. ThuËt to¸n ký
* T¹o kho¸:
Cho p, q lµ c¸c sè nguyªn tè lÎ sao cho p = 2q + 1 vµ bµi to¸n rêi r¹c trªn Zp lµ khã. LÊy a Î Zp* lµ mét phÇn tö cña bËc q (NÕu a0 lµ phÇn tö nguyªn thuû cña Zp th× a = a0(p -1)/q modp). LÊy 1 £ a £ q-1 vµ x¸c ®Þnh: b = aa modp.
LÊy G lµ ph©n nhãm nh©n cña Zp* bËc q (G bao gåm c¸c thÆng d bËc 2 theo modun p).
LÊy P = A = G, x¸c ®Þnh:
K = { (p, a, a, b): b = aa modp}
C¸c gi¸ trÞ p, a, b lµ c«ng khai, a lµ bÝ mËt.
* T¹o ch÷ ký:
Víi K = (p, a, a, b) vµ x Î G, x¸c ®Þnh ch÷ ký y trªn th«ng b¸o x:
y = sigk(x) = xa modp
IV.2.2. Giao thøc kiÓm tra
Víi x, y Î G, sù kiÓm tra ®îc tiÕn hµnh theo giao thøc sau:
1. Alice chän e1, e2 ngÉu nhiªn, e1, e2 Î Zp*.
2. Alice tÝnh c = y b modp vµ göi nã cho Bob.
3. Bob tÝnh d = c modp vµ göi nã cho Alice.
4. Alice chÊp nhËn y lµ ch÷ ký ®óng khi vµ chØ khi:
d º xamodp.
* Vai trß cña p, q trong lîc ®å:
Lîc ®å n»m trong Zp; tuy nhiªn chóng ta cÇn tÝnh to¸n trong ph©n nhãm nh©n G cña Zp* cña bËc nguyªn tè lÎ. §Æc biÖt, chóng ta cÇn tÝnh phÇn tö nghÞch ®¶o theo modun ½G½, ®iÒu nµy lý gi¶i t¹i sao ½G½nªn lµ nguyªn tè lÎ. Nã thuËn tiÖn nÕu lÊy p =2q+1 víi q lµ nguyªn tè lÎ. Trong trêng hîp nµy, ph©n nhãm G lµ tån t¹i.
*Chøng minh bíc 4 cña giao thøc kiÓm tra:
ë ®©y, chóng ta chøng minh r»ng Alice sÏ chÊp nhËn ch÷ ký ®óng. Trong c¸c phÐp to¸n díi ®©y, tÊt c¶ sè mò lµ biÕn ®æi theo modun q.
Ta cã: d º c modp
Mµ c = y b modp
Þ d º ybmodp (1)
Ta l¹i cã: b º aamodp
Þ b º a modp (2)
T¬ng tù ta còng cã: y = xa modp
Þ y = x modp (3)
Thay (2), (3) vµo (1) ®îc:
d º xamodp. _ §ã lµ ®iÒu ph¶i chøng minh.
VÝ dô: Gi¶ sö chóng ta lÊy p = 467. Tõ 2 lµ c¨n nguyªn thuû => 22 = 4 lµ thÆng d bËc 2 theo modun 467 vµ 4 lµ phÇn tö sinh cña G. LÊy a = 4. Gi¶ sö a = 101, ta cã:
b = aamodp = 4101 mod467 = 449
Bob sÏ ký th«ng b¸o x = 119 víi ch÷ ký:
y = xa modp = 119101 mod467 = 129
Gi¶ sö Alice muèn kiÓm tra ch÷ ký y. Alice chän ngÉu nhiªn e1 = 38, e2 = 397.
Ta cã: c = y b modp = 12938 449397 mod467 = 13
Alice göi c =13 cho Bob vµ Bob sÏ tÝnh d theo:
d = c modp
Þ d = 13101 mod233 mod467 (q = (p - 1)/2 = (467 –1 )/2 = 233)
Þ d = 9
Alice kiÓm tra ch÷ ký y theo bíc 4. Cã:
xamodp = 11938 4397 mod467 = 9
Þ d º xamodp .
Do ®ã, Alice chÊp nhËn ch÷ ký lµ ®óng.
IV.2.3. Giao thøc chèi bá
Mét vÊn ®Ò ®Æt ra, nÕu sù céng t¸c cña Bob lµ cÇn thiÕt trong viÖc kiÓm tra ch÷ ký th× ®iÒu g× ®· ng¨n c¶n Bob tõ chèi ch÷ ký do chÝnh anh ta t¹o ra trong thêi gian gÇn ®©y? TÊt nhiªn, Bob cã thÓ cho r»ng ch÷ ký ®óng ®ã lµ gi¶ m¹o vµ tõ chèi kiÓm tra nã hoÆc Bob thùc hiÖn mét giao thøc mµ theo ®ã ch÷ ký sÏ kh«ng ®îc kiÓm tra. V× vËy, mét lîc ®å ch÷ ký chèng chèi bá ®îc kÕt hîp chÆt chÏ víi mét giao thøc chèi bá vµ nhê ®iÒu ®ã Bob cã thÓ chøng minh
®îc r»ng ch÷ ký ®ã lµ gi¶ m¹o. (NÕu anh ta tõ chèi thùc hiÖn mét phÇn trong giao thøc chèi bá, ®iÒu ®ã ®ång nghÜa víi dÊu hiÖu chøng minh ch÷ ký ®ã lµ x¸c thùc trªn thùc tÕ vµ anh ta ®ang cè g¾ng tõ chèi ch÷ ký cña m×nh).
Giao thøc chèi bá gåm 2 tiÕn tr×nh cña giao thøc kiÓm tra vµ cã c¸c bíc sau:
Alice chän e1, e2 ngÉu nhiªn, e1, e2 Î Zq*.
2. Alice tÝnh c = y b modp vµ göi nã cho Bob.
3. Bob tÝnh d = c modp vµ göi nã cho Alice.
4. Alice kiÓm tra d ¹ xamodp.
5.Alice chän f1, f2 ngÉu nhiªn, f1, f2 Î Zq*.
6. Alice tÝnh C = yb modp vµ göi nã cho Bob.
7. Bob tÝnh D = c modp vµ göi nã cho Alice.
8. Alice kiÓm tra D ¹ xamodp
9. Alice kÕt luËn r»ng y lµ ch÷ ký gi¶ m¹o khi vµ chØ khi
(da) º (Da) modp
C¸c bíc 1 – 4 vµ 5 – 8 lµ 2 tiÕn tr×nh kh«ng thµnh c«ng cña giao thøc kiÓm tra. Bíc 9 lµ bíc “kiÓm tra tÝnh chÝnh x¸c” cho phÐp Alice x¸c ®Þnh râ ch÷ ký ®ã cã x¸c thùc hay kh«ng nÕu sù tr¶ lêi cña Bob ®îc t¹o ra nh giao thøc theo lý thuyÕt.
VÝ dô: Ta lÊy t¬ng tù nh vÝ dô tríc. LÊy p =467, a = 4, a = 101, b = 449.
Ký th«ng b¸o x =286 víi ch÷ ký y = 83 (lµ gi¶ m¹o). Bob muèn thuyÕt phôc Alice r»ng ch÷ ký ®ã lµ kh«ng ®óng. VËy ph¶i thùc hiÖn nh sau:
Alice chän ngÉu nhiªn e1 = 45, e2 = 237. Alice tÝnh c = 305 vµ Bob tr¶ lêi víi d = 109. Alice tÝnh: 28645. 4237mod467 = 149.
V× 149 ¹ 109 nªn Alice thùc hiÖn tiÕp giao thøc chèi bá.
Alice chän tiÕp f1 = 125, f2 = 9, ngÉu nhiªn, Alice tÝnh C = 270 vµ Bob tr¶ lêi víi D = 68. Alice tÝnh: 286125.49mod467 = 25.
V× 25 ¹ 68 nªn Alice thùc hiÖn bíc cuèi cïng cña giao thøc tøc lµ thùc hiÖn kiÓm tra tÝnh chÝnh x¸c.
Ta cã: (109.4-237)125 º 188 mod467
vµ (68.4-9)45 º 188 mod467
Þ(da) º (Da) modp
VËy Alice tin ch¾c r»ng ch÷ ký ®ã lµ kh«ng ®óng.
B©y giê, chóng ta cÇn ph¶i chøng minh 2 ®iÒu lµ:
Bob cã thÓ thuyÕt phôc Alice r»ng ch÷ ký kh«ng ®óng ®ã lµ gi¶ m¹o.
b. Bob kh«ng thÓ lµm cho Alice bÞ thuyÕt phôc r»ng ch÷ ký ®óng ®ã lµ gi¶ m¹o ngo¹i trõ x¸c suÊt rÊt nhá.
IV. 3. C¸c ®Þnh lý
IV.3.1 §Þnh lý 1: NÕu y ¹ xa modp, Alice sÏ chÊp nhËn y nh lµ mét ch÷ ký ®óng cña x víi x¸c suÊt .
Chøng minh:
Tríc tiªn, ta nhËn xÐt r»ng mçi yªu cÇu c cã thÓ x¶y ra sÏ t¬ng øng chÝnh x¸c víi mét cÆp (e1, e2) bËc q. (Bëi v× y vµ b ®Òu lµ phÇn tö cña nhãm nh©n G cã bËc nguyªn tè lÎ q). Khi Bob nhËn yªu cÇu c anh ta kh«ng biÕt Alice ®· dïng cÆp (e1, e2) nµo ®Ó x©y dùng c. Chóng ta cÇn ph¶i chøng minh r»ng, nÕu y ¹ xamodp th× c¸c c©u tr¶ lêi cña Bob d Î G cã thÓ ®óng víi duy nhÊt mét cÆp (e1, e2) trong c¸c cÆp (e1, e2) bËc q.
Tõ phÇn tö sinh a cña nhãm G, chóng ta cã thÓ viÕt ®îc mét sè phÇn tö cña G nh lµ mét kh¶ n¨ng cña a víi sè mò x¸c ®Þnh duy nhÊt theo modun q. Nh vËy, ta cã thÓ viÕt: c = ai, d = aj, x = ak, y = al víi i, j, k, l Î Zp vµ tÊt c¶ tÝnh theo modun p.
Ta xÐt 2 ®ång d sau:
c º yebe modp (1)
d º xeaemodp (2)
Û ai º al .e.bemodp
víi b = aamodp
Þ ai º al .e. aa.emodp
Û ai º al .e + a .emodp
Þ i º l.e1 + a.e2 modq (3)
(2) Þ aj º ak .e. aemodp
Û aj º ak .e + emodp
Þ j º k.e1 + e2 modq (4)
Tõ (3) vµ (4) ta cã hÖ:
i º l.e1 + a.e2 modq
j º k.e1 + e2 modq
XÐt D = ½lk a1½ = l – a.k (5)
MÆt kh¸c: y ¹ xa modp (gt)
Û al ¹ ak .amodp
Þ l ¹ a.k modq (6)
Tõ (5) vµ (6) Þ D ¹ 0
V× hÖ sè ma trËn cña hÖ ®ång d theo modun q ¹ 0 nªn hÖ cã mét nghiÖm duy nhÊt nghÜa lµ ta t×m ®îc duy nhÊt mét cÆp (e1, e2) " i, j, k, l Î Zp.
Do ®ã, " d Î G lµ c©u tr¶ lêi th× tÊt c¶ c¸c c©u tr¶ lêi ®ã chØ ®óng víi mét cÆp (e1, e2) trong c¸c cÆp (e1, e2) bËc q.
VËy, x¸c suÊt r»ng Bob ®a cho Alice c©u tr¶ lêi d mµ sÏ ®îc kiÓm tra lµ vµ ®ång nghÜa víi viÖc Alice chÊp nhËn y lµ ch÷ ký ®óng cña x víi x¸c suÊt
IV.3.2. §Þnh lý 2. Khi Alice vµ Bob cïng thùc hiÖn giao thøc chèi bá. NÕu y ¹ xamodp th× (da-e)f º (Da-f)e modp.
Chøng minh:
Ta cã: d º camodp
Mµ c º yebe modp
Þ d º ye.a.be.amodp
MÆt kh¸c: b º aa modp
Þ d º ye.a. ae.a.a modp
Do vËy:
(d.a-e)f º (ye.a.ae.a.a.a-e)f modp
º ye.a.f.ae.f – e.f modp
º ye.a.f modp (1)
T¬ng tù nh trªn ta còng tÝnh ®îc:
(D.a-f)e º ye.a.f modp (2)
víi D º Camodp
C º yfbf modp
b º aa modp
Tõ (1) vµ (2) Þ(da-e)f º (Da-f)e modp.
V× vËy, nÕu y lµ ch÷ ký gi¶ m¹o th× Bob cã thÓ thuyÕt phôc Alice tin ch÷ ký ®ã lµ gi¶ m¹o.
IV.3.3. §Þnh lý 3. Gi¶ sö y º xamodp, Alice thùc hiÖn giao thøc chèi bá. NÕu d ¹ xeaemodp, D ¹ xfafmodp th× kh¶ n¨ng (da-e)f ¹ (Da-f)e modp cã x¸c
suÊt lµ 1 – .
Chøng minh:
ë ®©y, ta xÐt trêng hîp r»ng Bob cã thÓ thö tõ chèi ch÷ ký ®óng cña anh ta. Trong trêng hîp nµy, chóng ta kh«ng thÓ gi¶ ®Þnh Bob lµm theo giao thøc nghÜa lµ Bob cã thÓ kh«ng x©y dùng d vµ D nh lý thuyÕt bëi giao thøc, chóng
ta chØ gi¶ ®Þnh Bob t¹o ra 2 gi¸ trÞ d vµ D tho¶ m·n ®iÒu kiÖn trong bíc 4, bíc 8 vµ bíc 9 cña giao thøc chèi bá.
Gi¶ thiÕt chóng ta cã:
y º xamodp
d ¹ xeaemodp
D ¹ xfafmodp
(da-e)f º (Da-f)e modp
Tõ (da-e)f º (Da-f)e modp cã:
(da-e)f.e º D.a-f modp
(da-e)f.e .af º D modp
Û D º (dea-e.e)f. af modp
§Æt d0 = dea-e.emodp _ d0 chØ phô thuéc vµo bíc 1 – 4 cña giao thøc.
Þ D º d0f.af modp
Tõ d0 = dea-e.emodp Þ d0e = da-e.modp
Þ d = d0e.aemodp
¸p dông ®Þnh lý 1, chóng ta kÕt luËn y lµ ch÷ ký ®óng cña d0 víi x¸c suÊt 1 –. Nhng chóng ta ®ang gi¶ ®Þnh y lµ ch÷ ký ®óng cña x. Do ®ã, víi x¸c suÊt cao chóng ta cã: xa º d0a modp Þ x = d0 (1)
MÆt kh¸c: d ¹ xeaemodp (gt)
d.a-e ¹ xemodp
(d.a-e)e ¹ xmodp
x ¹ d e .a-e. e modp
mµ d0 = d e a-e. e modp (theo trªn)
Þ x ¹ d0 (2)
Ta thÊy (1) vµ (2) m©u thuÉn .
V× vËy, ®Ó (da-e)f ¹ (Da-f)e modp víi d ¹ xeaemodp vµ D ¹ xfafmodp th× x¸c suÊt x¶y ra lµ rÊt cao 1 – . NghÜa lµ, Bob chØ cã thÓ lõa Alice trong trêng hîp nµy víi x¸c suÊt rÊt nhá lµ.
IV.4. VÊn ®Ò cÇn gi¶i quyÕt
Ba ®Þnh lý trong phÇn nµy ®Òu míi chØ ®Ò cËp tíi mét khÝa c¹nh lµ Bob chÊp nhËn hay chèi bá ch÷ ký cña m×nh mµ cha nãi tíi mét khÝa c¹nh kh¸c lµ Alice cã thÓ chèi bá viÖc m×nh ®· ®äc th«ng b¸o do Bob göi. Ta gi¶ ®Þnh r»ng, nÕu Bob göi cho Alice mét th«ng b¸o ®ßi nî nhng Alice cha muèn tr¶ hoÆc kh«ng muèn tr¶ th× c« ta sÏ lê ®i vµ coi nh cha nhËn hay cha ®äc th«ng b¸o ®ã. VËy Bob cã thÓ lµm c¸ch nµo ®Ó chøng minh Alice ®· më th«ng b¸o?
§Ó gi¶i quyÕt vÊn ®Ò trªn Bob vµ Alice thùc hiÖn theo giao thøc sau:
Tríc tiªn, Bob vµ Alice cïng x©y dùng kho¸ K theo lîc ®å trao ®æi kho¸ Diffie – Hellman. Giao thøc nh sau:
Gi¶ sö p lµ sè nguyªn tè, a lµ c¨n nguyªn thuû cña Zp*; a, p lµ c«ng khai. Cuéc trao ®æi kho¸ gi÷a Bob vµ Alice theo c¸c bíc sau:
Bob chän ngÉu nhiªn aB: 0 £ aB £ p – 2
Bob tÝnh aamodp vµ göi nã cho Alice
Bob chän ngÉu nhiªn aA: 0 £ aA £ p – 2
Bob tÝnh aamodp vµ göi nã cho Bob
Bob tÝnh K = (aa )a modp
Alice tÝnh K = (aa )a modp
Sau ®ã, Bob tiÕp tôc x©y dùng mét kho¸ K1, K1 bÝ mËt. Bob cã thÓ x©y dùng K1 theo hÖ mËt ®èi xøng(DES , AES - ®ã lµ hÖ mét kho¸. C¸c kho¸ lËp vµ gi¶i m· lµ nh nhau hay dÔ dµng x¸c ®Þnh lÉn nhau. C¸c hÖ mét kho¸ cung cÊp mét
c¸ch tuyÖt vêi cho viÖc m· ho¸ c¸c tÖp riªng cña ngêi dïng). Bob vµ Alice tiÕn hµnh tiÕp theo c¸c bíc díi ®©y:
Bob dïng K1 ®Ó m· ho¸ th«ng b¸o x vµ ch÷ ký kÌm theo:
y = sigB(x)
i = eK(x, y)
Bob göi i cho Alice
Alice göi l¹i th«ng b¸o x1 kÌm ch÷ ký y1 = sigA(x1) vµ m· y1 b»ng K: j = eK(y1) råi göi cho Bob. Trong ®ã x1 chøa ngµy, giê, lêi yªu cÇu vµ chøa c¶ i.
Bob tÝnh i1 = eK(K1) vµ göi nã cho Alice.
Khi Bob vµ Alice tiÕn hµnh theo giao thøc trªn, muèn ®äc ®îc th«ng b¸o th× Alice ph¶i göi l¹i mét th«ng b¸o (®· ®îc m· ho¸ b»ng kho¸ K) tíi Bob, yªu cÇu Bob göi kho¸ K1 cho m×nh bëi v× K1 chØ m×nh Bob biÕt. Bob kiÓm tra th«ng b¸o cña Alice theo thuËt to¸n kiÓm tra c«ng khai Ver ®Ó x¸c ®Þnh th«ng b¸o cã ®óng cña Alice göi hay kh«ng? NÕu ®óng, anh ta göi kho¸ K1 cho Alice mµ K1 ®· ®îc m· ho¸ theo K.
Bob thùc hiÖn theo c¸ch trªn sÏ cã ®ñ chøng cø ®Ó chøng minh tríc toµ r»ng Alice cã më vµ ®äc th«ng b¸o anh ta göi tíi b»ng c¸ch ®a th«ng b¸o cã kÌm theo ch÷ ký cña Alice vµ c¶ ngµy giê Bob nhËn ®îc th«ng b¸o ®ã.
Ch¬ng V
Ch÷ ký ngêi x¸c nhËn
®îc chØ ®Þnh
V.1. Giíi thiÖu
PhÐp chøng minh tri thøc kh«ng lµ phÐp chøng minh dïng ®Ó thuyÕt phôc bªn nhËn tin nh÷ng ®iÒu ngêi chøng minh ®a ra lµ ®óng ®¾n nhng kh«ng cho phÐp bªn nhËn thuyÕt phôc ngêi kh¸c. §©y lµ phÐp chøng minh rÊt thó vÞ trong c¸c hÖ thèng chøng minh t¬ng t¸c. HÖ thèng chøng minh nµy chØ cã 2 ngêi tham gia, gi¶ sö lµ Peggy vµ Vic. Peggy lµ ngêi chøng minh vµ Vic lµ ngêi kiÓm tra. Peggy biÕt mét vµi ®iÒu trong thùc tÕ vµ c« Êy muèn chøng minh víi Vic r»ng c« Êy ®óng. Ban ®Çu c¶ Peggy vµ Vic ®Òu cã ®Çu vµo x. Peggy thuyÕt phôc Vic r»ng x cã mét vµi ®Æc tÝnh ®Þnh râ nhng cuèi giao thøc Vic vÉn kh«ng biÕt c¸ch chøng minh x cã ®Æc tÝnh nµy nh thÕ nµo.
Ngîc l¹i, ch÷ ký sè tù x¸c thùc (vÝ dô ch÷ ký RSA, Elgamal…) lµ cùc ®èi lËp víi phÐp chøng minh tri thøc kh«ng. Ch÷ ký sè thùc x¸c thùc kh«ng chØ cho phÐp bªn nhËn thuyÕt phôc ngêi kh¸c mét c¸ch ®¬n gi¶n b»ng c¸ch cung cÊp mét b¶n copy cña ch÷ ký mµ cßn cho phÐp ngêi bÊt kú ®· bÞ thuyÕt phôc ®i thuyÕt phôc ngêi kh¸c. §iÒu nµy cã nghÜa lµ bÊt kú ngêi nµo còng cã kh¶ n¨ng kiÓm tra ch÷ ký.
Ch÷ ký chèng chèi bá cã mét vÞ trÝ ®Æc biÖt, nã ë mét n¬i gi÷a c¸c cùc nµy, b¶o vÖ c¶ nh÷ng lîi Ých riªng cña ngêi ký trong viÖc b¶o ®¶m r»ng c¸c ch÷ ký kh«ng bÞ bªn nhËn dïng sai môc ®Ých còng nh c¸c viÖc lµm cña bªn nhËn ®Ó thuyÕt phôc ngêi kh¸c sau nµy. Bªn nhËn ch÷ ký chèng chèi bá bÞ thuyÕt phôc r»ng tÊt c¶ nhng ngßi nµo gi÷ nã ®Òu cã thÓ th¸ch thøc ngêi ký nã vµ r»ng ngßi ký kh«ng thÓ tr¶ lêi sai. Bëi v× ngêi ký lu«n lu«n cã thÓ thuyÕt phôc mét ngêi bÊt kú nµo ®ã r»ng mét ch÷ ký tin cËy lµ tin cËy vµ ch÷
ký kh«ng tin cËy lµ kh«ng tin cËy. Nh vËy ngêi nhËn Ýt nhÊt yªn t©m r»ng ngêi ký kh«ng thÓ tõ chèi mét ch÷ ký tin cËy. C¸c ch÷ ký chèng chèi bá cã nhiÒu øng dông nh trong cuéc b¸n ®Êu gi¸ mµ sù tr¶ gi¸ ®îc gi÷ bÝ mËt, b¶o vÖ sù sao chÐp phÇn mÒm…
§èi víi bªn nhËn, c¸c ch÷ ký chèng chèi bá cã u thÕ h¬n so v¬i tri thøc kh«ng ë chç bªn nhËn n¾m gi÷ ®iÒu g× ®ã mµ sau nµy, trong nh÷ng hoµn c¶nh nhÊt ®Þnh, cã thÓ ®îc sö dông ®Ó thuyÕt phôc ngêi kh¸c. VÝ dô, Bob ký mét th«ng b¸o cho phÐp Alice rót $1000 tõ tµi kho¶n cña Bob b»ng ch÷ ký chèng chèi bá. Alice muèn rót ®îc tiÒn th× ph¶i chøng minh ch÷ ký trªn th«ng b¸o ®óng lµ cña Bob. Nhng trong nhiÒu øng dông thùc tÕ sù b¶o vÖ nµy lµ qu¸ yÕu. Nã dùa trªn ngêi ký céng t¸c trong viÖc tiÕp tôc x¸c nhËn ch÷ ký. NÕu ngêi ký kh«ng thÓ ®¸p øng ®Çy ®ñ c¸c ®iÒu kiÖn trong giao thøc hái ®¸p hoÆc ngêi ký tõ chèi hîp t¸c th× bªn nhËn kh«ng thÓ sö dông ch÷ ký. VÝ dô, nÕu Bob x©y dung c©u tr¶ lêi d kh«ng ®óng theo giao thøc hoÆc Bob tõ chèi tham gia kiÓm tra ch÷ ký th× Alice kh«ng thÓ sö dông ch÷ ký ®ã ®Ó rót tiÒn.
VÝ dô 1: ¤ng Gi¸m ®èc mét c«ng ty nµo ®ã göi mét th«ng b¸o, cã kÌm ch÷ ký cña «ng ta, tíi nh©n viªn trong c«ng ty trªn m¹ng m¸y tÝnh. Néi dung th«ng b¸o muèn c«ng ty thanh to¸n mét ho¸ ®¬n mua hµng, mµ thùc ra lµ ho¸ ®¬n khèng. Anh nh©n viªn ®ã thùc hiÖn theo ®óng ho¸ ®¬n. Nhng khi Thanh tra kiÓm tra vµ ph¸t hiÖn ho¸ ®¬n ®ã lµ gi¶, «ng Gi¸m ®èc muèn tr¾ng téi nªn «ng ta phñ nhËn ch÷ ký ®iÖn tö trªn th«ng b¸o göi cho anh nh©n viªn
VÝ dô 2: ¤ng Gi¸m ®èc c«ng ty PhÇn mÒm b¸n phÇn mÒm, cã kÌm ch÷ ký ®iÖn tö cña «ng ta ®îc t¹o theo thuËt to¸n ký cña lîc ®å ch÷ ký chèng chèi bá, trªn m¹ng m¸y tÝnh. Kh¸ch hµng muèn kiÓm tra ®é tin cËy cña ch÷ ký trªn phÇn mÒm th× cÇn ph¶i cã sù céng t¸c cña ngêi ký. §iÒu nµy kh«ng thÓ thùc hiÖn thêng xuyªn ®èi víi mét «ng Gi¸m ®èc. VËy ph¶i gi¶i quyÕt vÊn ®Ò nµy nh thÕ nµo?
C¬ së giao thøc ngêi x¸c nhËn ®îc chØ ®Þnh gi¶i quyÕt ®iÓm yÕu nµy cña ch÷ ký chèng chèi bá. Nã l«i cuèn 3 phÝa cïng tham gia: ®ã lµ bªn nhËn
ch÷ ký, ngêi ký vµ ngêi x¸c nhËn. Bªn nhËn ch÷ ký ®Æt tªn lµ Rita, lµ phÝa kh«ng cÇn khãa c«ng khai. Ngêi ký ®Æt tªn lµ Simon, vµ ngêi x¸c nhËn, ®Æt tªn lµ Colin, mçi ngêi cã khãa c«ng khai ®îc phÐp chÊp nhËn bëi Rita. Giao thøc ký chØ gåmt¬ng t¸c gi÷a Simon vµ Rita. Nã lµm cho Rita bÞ thuyÕt phôc r»ng Simon ®· ®a cho c« Êy mét ch÷ ký ngêi x¸c nhËn ®îc chØ ®Þnh, ®èi víi th«ng b¸o ®îc tháa thuËn, sö dông khãa riªng cña Simon vµ khãa c«ng khai cña colin. Do ®ã Rita bÞ thuyÕt phôc r»ng ch÷ ký cña Simon trªn th«ng b¸o nµy cã thÓ ®îc x¸c nhËn bëi Colin. Giao thøc x¸c nhËn bÊt kú sau ®ã bëi Colin, phô thuéc vµo viÖc anh ta tiÕt lé nhiÒu nh thÕ nµo cã thÓ lµ tri thøc kh«ng, ngêi x¸c nhËn ®îc chØ ®Þnh hoÆc tù x¸c thùc.
V.2. HÖ thèng c¬ së
Ta x©y dùng mét vÞ trÝ ®¬n gi¶n cho giao thøc ngêi x¸c nhËn ®îc chØ ®Þnh c¬ së nh sau:
Simon ®a cho Rita ch÷ ký sè tù x¸c thùc trªn th«ng b¸o tháa thuËn ®îc ký bëi khãa riªng cña anh ta – trõ viÖc ch÷ ký lµ kh«ng ®Çy ®ñ theo nghÜa nã tïy thuéc vµo sù tin cËy cña ch÷ ký chèng chèi bá bÊt kú. Ch÷ ký chèng chèi bá nµy ®îc t¹o bëi Simon nh thÓ nã ®îc ký bëi Colin vµ nã t¬ng øng mét c¸ch tin cËy víi khãa c«ng khai cña Colin. ( Simon cã kh¶ n¨ng t¹o ch÷ ký nh thÕ cña Colin nhng chØ trªn c¸c th«ng b¸o ngÉu nhiªn bëi v× sau khi anh ta chän ch÷ ký, anh ta ®îc tù do ®Ó chän gi¸ trÞ bÊt kú cho th«ng b¸o ®· ®îc ký). Simon sau ®ã chøng minh víi Rita r»ng ch÷ ký chèng chèi bá ®ã lµ tin cËy.
Rita kh«ng thÓ chøng minh ®iÒu g× vÒ b¶n sao sù hîp t¸c cña c« Êy víi Simon, trõ khi c« Êy nhËn ®îc sù gióp ®ì. Nhng Colin víi khãa riªng cña m×nh lu«n lu«n cã thÓ gióp Rita b»ng c¸ch chøng minh víi ngêi bÊt kú r»ng ch÷ ký chèng chèi bá mµ Simon lµ tin cËy, do ®ã thuyÕt phôc hä vÒ sù tin cËy cña ch÷ ký gèc kh«ng ®Çy ®ñ cña Simon. V× vËy, Colin cã thÓ chøng minh ®iÒu ®ã b»ng nhiÒu c¸ch kh¸c nhau.
Sù khÐo lÐo cña tiÕp cËn cÊu tróc ë trªn lµ c¸ch ®Ó t¹o ch÷ ký tù x¸c thùc tïy thuéc vµo ch÷ ký chèng chèi bá. §iÒu nµy cã hai khÝa c¹nh. Mét mÆt, nÕu
ch÷ ký chèng chèi bá lµ kh«ng tin cËy vµ cã thÓ ®îc chän tù do th× ch÷ ký tù x¸c thùc sÏ kh«ng cã gi¸ trÞ theo nghÜa lµ bÊt kú ngêi nµo còng cã thÓ dÔ dµng t¹o ra nã. MÆt kh¸c, nÕu ch÷ chèng chèi bá lµ tin cËy vµ ai ®ã bÞ thuyÕt phôc vÒ sù tin cËy cña nã th× hä sÏ bÞ thuyÕt phôc vÒ sù tin cËy cña ch÷ ký tù x¸c thùc. C¸c tÝnh chÊt nµy cã thÓ ®îc hoµn thµnh víi c¸c lîc ®å ch÷ ký x¸c thùc dùa trªn hµm mét chiÒu. Mét d¹ng ®iÓn h×nh cña ch÷ ký lµ n¬i ®Çu ra cña hµm mét chiÒu ®îc dïng ®Ó x¸c ®Þnh c¸i sÏ lµ th¸ch thøc cña chøng minh tri thøc kh«ng. Lîc ®å ch÷ ký nh thÕ ®îc söa ®æi sao cho viÖc x¸c ®Þnh hµm mét chiÒu bao gåm ch÷ ký chèng chèi bá theo c¸ch thÝch hîp. Ch¼ng h¹n, ®Çu ra cña hµm mét chiÒu míi cã thÓ ®îc x¸c ®Þnh nh ®Çu ra cña hµm gèc ®îc XOR víi ch÷ ký chèng chèi bá. Nh vËy sù tù do hoµn toµn trong lùa chän c¸i g× lµ ch÷ ký chèng chèi bá cho phÐp sù tù do hoµn toµn trong viÖc chän ®Çu ra cña hµm mét chiÒu míi, nhng sù lùa chän cã giíi h¹n cña ch÷ ký chèng chèi bá cã nghÜa lµ nh÷ng rµng buéc trªn ®Çu ra cña hµm mét chiÒu míi.
V.3. Giao thøc ký
Giao thøc nµy nh»m ®Ó cho Simon ký th«ng b¸o vµ thuyÕt phôc Rita r»ng ch÷ ký lµ tin cËy. §Ó ®¬n gi¶n, Simon sÏ sö dônglîc ®å ch÷ ký RSA víi m«dun kho¸ c«ng khai n vµ sè mò 3. Kho¸ c«ng khai cña Colin sÏ lµ h = gz, trong ®ã z lµ kho¸ riªng cña Colin, g lµ c¨n nguyªn thuû (cã bËc cao nhÊt) cña n. Kho¸ c«ng khai nµy vµ tÊt c¶ nh÷ng tÝnh to¸n trong giao thøc lµ trong nhãm bËc nguyªn tè mµ ë ®ã bµi to¸n logarit rêi r¹c ®îc gi¶ thiÕt lµ khã.
V.3.1. T¹o kho¸
Simon chän n = p.q víi p, q lµ c¸c sè nguyªn tè lín kh¸c nhau, f(n) = (p - 1)(q - 1). Cho P = A = Zn vµ x¸c ®Þnh:
K = {(n, p, q, 3-1, 3): n = p.q; p, q nguyªn tè: 3-1.3 º 1 mod f(n)}
C¸c gi¸ trÞ n, 3 c«ng khai; c¸c gi¸ trÞ p, q, 3-1 bÝ mËt.
V.3.2. T¹o ch÷ ký
Simon tiÕn hµnh ký th«ng b¸o m nh sau:
Simon chän x ngÉu nhiªn vµ tÝnh:
a = gx
b = hx
Víi K = (n, p, q, 3-1, 3) Simon tÝnh ch÷ ký RSA trªn H(a, b) Å F(m)
a = (H(a, b) Å F(m)) modn
Trong ®ã H(a, b) lµ hµm tæ hîp ®Ó khö cÊu tróc nh©n nhng l¹i dÔ dµng tÝnh ngîc; F lµ hµm Hash thÝch hîp.
Sau ®ã Simon göi a, b , a cho Rita.
ë giao thøc nµy, Simon ®· t¹o ra ®îc mét ch÷ ký chèng chèi bá nh thÓ nã ®îc ký bëi Colin. Ta dÔ dµng chøng minh ®îc ®iÒu nµy.
Ta cã: a = gx
b = hx
mµ h = gz
Þ b = (gz)x = (gx)z = az
MÆt kh¸c: z lµ kho¸ riªng cña Colin
Do ®ã: b = (gx)z lµ ch÷ ký chèng chèi bá cña Colin, víi g lµ c¨n nguyªn thuû cã bËc cao nhÊt cña n vµ z lµ kho¸ bÝ mËt.
V.3.3. Giao thøc kiÓm tra
ë ®©y ta gi¶ thiÕt ngêi ký tham gia vµo giao thøc kiÓm tra, cha cÇn sù cã mÆt cña ngêi x¸c nhËn. Giao thøc kiÓm tra diÔn ra víi sù céng t¸c cña Simon (ngêi ký) vµ Rita (ngêi nhËn). Giao thøc tiÕn hµnh nh sau:
Rita chän s, t ngÉu nhiªn vµ tÝnh c = gsht , råi göi c cho Simon.
Simon chän ngÉu nhiªn vµ tÝnh:
d = g; e = (c.d)x
Simon göi d, e cho Rita.
Rita göi s, t cho Simon
Simon kiÓm tra nÕu gsht = c th× simon göi cho Rita
Rita kiÓm tra nÕu d = g, e.a = asbt, H(a, b) Å F(m) = a3 modn th× ch÷ ký lµ tin cËy. Ngîc l¹i, ch÷ ký lµ kh«ng tin cËy.
Trong bíc 5, Rita kiÓm tra ®¼ng thøc e.a = asbt tøc lµ kiÓm tra b = az.
ThËt vËy:
Tõ asbt = e.a
Þ bt = e.a.a-s (1)
mµ e = (c.d)x
c = gsht
d = g
Þ e = (gs.ht.g )x = gs.x.ht.x.g.x
= (gx)s.ht.x.(gx) = as.htx.a (2)
Tõ (1) vµ (2) Þ bt = as.htx.a . a.a-s = ht.x
Þ b = hx = (gz)x = (gx)z = az.
§iÒu nµy thuyÕt phôc Rita r»ng ch÷ ký nµy do Simon t¹o ra vµ cã thÓ ®îc kiÓm tra bëi Colin. Nhng Rita kh«ng thÓ dïng kÕt qu¶ nµy ®Ó chøng minh nã víi nh÷ng ngêi kh¸c.
V.4. Giao thøc x¸c nhËn
Giao thøc nµy ®Ó cho ngêi kiÓm tra bÞ thuyÕt phôc r»ng ch÷ ký lµ phï hîp nhng còng kh«ng cho phÐp ngêi kiÓm tra ®i thuyÕt phôc ngêi kh¸c. Giao thøc nh sau:
Ngêi kiÓm tra Veronica chän u, v ngÉu nhiªn vµ tÝnh:
k = gu.av. Råi göi k cho Colin.
Colin chän ngÉu nhiªn vµ tÝnh:
l = g, n = (k.l)z
Sau ®ã göi l, n cho ngêi kiÓm tra Veronica.
Ngêi kiÓm tra göi u, v cho Colin
Colin kiÓm tra nÕu gu.av = k th× Colin göi cho ngêi kiÓm tra Veronica.
Ngêi kiÓm tra Veronica sÏ kiÓm tra nÕu g = l vµ n.h = hu.bv th× ch÷ ký lµ tin cËy. Ngîc l¹i, ch÷ ký lµ kh«ng tin cËy.
ë bíc 5, ngêi kiÓm tra Veronica kiÓm tra ®¼ng thøc n.h = hu.bv còng chÝnh lµ kiÓm tra b = az.
Ta cã: n.h = hu.bv
Þ bv = n. h. h-u (1)
MÆt kh¸c: n = (k.l)z
k = gu.av
l = g
Þ n = (gu.av.g)z (2)
Tõ (1) vµ (2) Þ bv = (gu.av.g)z. h. h-u = guz.avz.g.g-uz.g
Þ bv = av.z Þ b = az.
V.5. Giao thøc chuyÓn ®æi.
§©y lµ mét giao thøc x¸c nhËn kh¸c cña Colin, giao thøc nµy lµ c¸ch ®Ó Colin chuyÓn ch÷ ký ngêi x¸c nhËn ®îc chØ ®Þnh thµnh ch÷ ký sè tù x¸c thùc. Ë ®©y Colin lËp nªn mét chøng minh kh«ng t¬ng t¸c r»ng mét ngêi nµo ®ã biÕt c¸ch biÓu diÔn b nh luü thõa cña a.
ý tëng c¬ b¶n cña sù chuyÓn ®æi nµy lµ ph¶i biÕt c¸ch biÓu diÔn b nh luü thõa cña a ®Ó thµnh lËp cÆp (r, y) sao cho ay = r.bF(a, r), trong ®ã F lµ hµm mét chiÒu thÝch hîp. Ta thÊy r»ng kho¸ c«ng khai h cña Colin kh«ng xuÊt hiÖn ë ®©y, h chØ xuÊt hiÖn trong giao thøc ký. Do vËy, sau khi Colin thùc hiÖn giao thøc chuyÓn ®æi th× bÊt kú ngêi nµo còng cã thÓ kiÓm tra ch÷ ký mµ kh«ng cÇn sù cã mÆt cña ngêi ký hay ngêi x¸c nhËn. Giao thøc tiÕn hµnh nh sau:
Colin chän w ngÉu nhiªn vµ tÝnh:
r = aw
y = w + z.F(a, r)
Sau ®ã göi r, y cho ngêi kiÓm tra Veronica.
Ngêi kiÓm tra Veronica kiÓm tra nÕu ay = r. bF(a, r) th× ch÷ ký lµ tin cËy. Ngîc l¹i, ch÷ ký lµ kh«ng tin cËy.
Chøng minh: ay = r. bF(a, r) th× ch÷ ký lµ tin cËy.
Ta cã: ay = r. bF(a, r)
Û aw + z.F(a, r) = aw.bF(a, r)
Û aw.az.F(a, r) = aw.bF(a, r)
Þ az.F(a, r) = bF(a, r)
Þ az = b hay b = az Þ ch÷ ký lµ tin cËy.
V.6. Tæng qu¸t
Lîc ®å ch÷ ký c¬ së cã thÓ ®îc tæng qu¸t ho¸ b»ng c¸ch bao gåm nhiÒu ngêi x¸c nhËn. H¬n mét kho¸ c«ng khai cña ngêi x¸c nhËn cã thÓ ®îc tæ hîp trong ch÷ ký chèng chèi bá ( nh lÊy tÝch cña c¸c kho¸ c«ng khai), sao cho sù céng t¸c cña tÊt c¶ nh÷ng ngêi x¸c nhËn sÏ lµ cÇn thiÕt cho sù x¸c nhËn bÊt kú. Cµng yªu cÇu nhiÒu ngêi x¸c thùc th× cµng khã kh¨n ®Ó nhËn sù x¸c thùc, vµ theo mét nghÜa trùc quan th× lîc ®å ch÷ ký cµng tiÕp cËn gÇn h¬n víi giao thøc tri thøc kh«ng. Vµ nÕu kho¸ cña Simon ®îc kÕt hîp vµo th× kÕt qu¶ lµ sù tiÕt lé tèi thiÓu.
Ch¬ng VI
Ch÷ ký ngêi x¸c nhËn
kh«ng thÓ chèi bá
VI.1. Giíi thiÖu
ë c¸c ch¬ng tríc chóng ta ®· lµm quen víi kh¸i niÖm vÒ ch÷ ký chèng chèi bá vµ ch÷ ký ngêi x¸c nhËn. Lîc ®å ch÷ ký ngêi x¸c nhËn ®· gi¶i quyÕt ®îc mét sè yÕu ®iÓm cña lîc ®å ch÷ ký chèng chèi bá. Trong lîc ®å ch÷ ký chèng chèi bá chØ gåm 2 thµnh phÇn tham gia lµ ngêi ký vµ ngêi x¸c nhËn (hoÆc ngêi kiÓm tra). Do vËy, nÕu ngêi ký tõ chèi céng t¸c ®ång nghÜa víi viÖc ch÷ ký kh«ng ®îc kiÓm tra. Trong lîc ®å ch÷ ký ngêi x¸c nhËn, kh¶ n¨ng kiÓm tra c¸c ch÷ ký lµ ngêi ®¹i diÖn ®îc thªm vµo thùc thÓ gäi lµ ngêi x¸c nhËn. Sù kiÓm tra cña ngêi x¸c nhËn chÝnh x¸c h¬n ngêi ký, c« ta ( anh ta) cã kh¶ n¨ng x¸c nhËn hoÆc tõ chèi ®é tin cËy cña ch÷ ký nhng c« ta (anh ta) kh«ng cã kh¶ n¨ng gi¶ m¹o mäi ch÷ ký.
Trong nhiÒu lîc ®å ch÷ ký ngêi x¸c nhËn, ngêi ký kh«ng thÓ x¸c nhËn ch÷ ký cña m×nh lµ tin cËy. NÕu ngêi x¸c nhËn tõ chèi céng t¸c dÉn ®Õn ch÷ ký kh«ng thÓ kiÓm tra. Trong thùc tÕ, sù tin cËy cña ngêi tham gia gi÷ vai trß rÊt quan träng, v× vËy gi¶m t×nh tr¹ng r¾c rèi cña bÊt kú ngêi tham gia nµo lµ mong muèn cao dùa vµo c¶ c¸c lý do kü thuËt vµ c¸c lý do tiÕt kiÖm. §iÒu nµy ®îc thùc hiÖn nÕu ch÷ ký cã thÓ kiÓm tra víi sù céng t¸c cña ngêi ký hoÆc céng t¸c cña ngêi x¸c nhËn. Sau ®ã ngêi sö dông cã thÓ tr¶ lêi ngêi ký sù kiÓm tra ch÷ ký. Nh mét sù b¶o vÖ an toµn, ngêi x¸c nhËn cßn cã thÓ kiÓm tra ch÷ ký nÕu ngêi ký tõ chèi céng t¸c.
Ch¬ng nµy giíi thiÖu lîc ®å ch÷ ký ngêi x¸c nhËn kh«ng thÓ chèi bá, ®a ra chøc n¨ng kiÓm tra ch÷ ký cña c¶ ngêi ký vµ ngêi x¸c nhËn. Lîc ®å
nµy lµ sù biÕn ®æi cña ch÷ ký ngêi x¸c nhËn. Lîc ®å cung cÊp mét c¸ch linh ho¹t ®èi víi ngêi ký vµ ngêi sö dông còng nh bao hµm c¸c biÕn ®æi cña ngêi x¸c nhËn ®îc chØ ®Þnh – ngêi thêng ®îc tin tëng trong thùc tÕ. Sù bæ sung vµo lîc ®å nh»m môc ®Ých ®¸nh l¹c híng nghÜa lµ c¸c ch÷ ký ngêi x¸c nhËn kh«ng thÓ chèi bá cã thÓ sinh ra víi môc ®Ých ®¸nh lõa. C¸c ch÷ ký ngêi x¸c nhËn kh«ng thÓ chèi bá mï qu¸ng cã lîi Ých trong nhiÒu øng dông nh c¸c hÖ thèng tr¶ tiÒn tríc víi m¹ng lín cña c¸c dÞch vô n¬i mµ quyÒn riªng t cña ngêi sö dông m¹ng nªn ®îc b¶o vÖ trong khi kiÓm duyÖt sù mua b¸n cña c¸c dÊu hiÖu mua b¸n dµi h¹n cÇn ph¶i ®îc ng¨n chÆn.
VI. 2. M« h×nh cña ch÷ ký ngêi x¸c nhËn kh«ng thÓ chèi bá
PhÇn nµy cung cÊp mét kiÓu ®Æc trng cña c¸c ch÷ ký ngêi x¸c nhËn kh«ng thÓ chèi bá. Nã cung cÊp sù ®Þnh nghÜa kh«ng ®æi cho c¸c giao thøc gi¶i m· sö dông c¸c kh¸i niÖm chuÈn cña m¸y Turing t¬ng t¸c, hÖ thèng chøng minh t¬ng t¸c vµ tri thøc kh«ng.
§Ó ®¬n gi¶n, chóng ta dïng S chØ ngêi ký, C chØ ngêi x¸c nhËn vµ V lµ ngêi kiÓm tra. Lîc ®å ch÷ ký ngêi x¸c nhËn kh«ng thÓ chèi bá bao gåm c¸c thuËt to¸n vµ c¸c giao thøc sau:
- ThuËt to¸n t¹o kho¸: t¹o 2 kho¸ GENS vµ GENC nhËn 1l lµ ®Çu vµo (1l nghÜa lµ mét d·y cã l sè 1), trong ®ã l lµ tham sè an toµn vµ lÇn lît lµ 2 cÆp ®Çu ra (SS, PS) vµ (SC, PC). ThuËt to¸n GENS ®îc thùc hiÖn bëi S, GENC ®îc thùc hiÖn bëi C. (SS, PS), (SC, PC) lÇn lît lµ c¸c cÆp kho¸ bÝ mËt vµ c«ng khai cña S vµ C. Kho¸ bÝ mËt S ®îc sö dông ®Ó t¹o ra c¸c ch÷ ký. Ngoµi ra SS, SC ®îc lÇn lît sö dông bëi ngêi ngêi ký vµ ngêi x¸c nhËn trong c¸c giao thøc x¸c nhËn vµ giao thøc chèi bá.
- ThuËt to¸n ký ®a thøc theo x¸c suÊt SIGN nhËn kho¸ bÝ mËt SS, th«ng b¸o m vµ c¸c ®Çu ra cña ch÷ ký s.
- Giao thøc kiÓm tra ch÷ ký t¬ng t¸c (CVer , VVer ). §©y lµ cÆp ®Çu vµo cña m¸y Turing thêi gian ®a thøc t¬ng t¸c gi÷a ngêi x¸c nhËn vµ ngêi kiÓm tra:
( CVer (SC), VVer ())(m, s, PS, PC) ® v
§Çu vµo chung gåm th«ng b¸o m, ch÷ ký s, 2 kho¸ c«ng khai PS, PC. Ngêi x¸c nhËn cã SC lµ ®Çu vµo riªng. Sù tr¶ vÒ cña giao thøc lµ gi¸ trÞ logic v. NÕu ®Çu ra lµ 1 nghÜa lµ ch÷ ký s tin cËy trªn th«ng b¸o m, ®Çu ra lµ 0 th× ngîc l¹i.
- Giao thøc kiÓm tra ch÷ ký t¬ng t¸c (SVer, VVer). §©y lµ cÆp ®Çu vµo cña m¸y Turing thêi gian ®a thøc t¬ng t¸c gi÷a ngêi ký vµ ngêi kiÓm tra:
(SVer(SS), VVer())(m, s, PS, PC) ® v
§Çu vµo chung gåm th«ng b¸o m, ch÷ ký s vµ 2 kho¸ c«ng khai PS, PC. Ngêi ký cã SS lµ ®Çu vµo riªng. Sù tr¶ vÒ cña giao thøc lµ gi¸ trÞ logic v. NÕu ®Çu ra lµ 1 nghÜa lµ ch÷ ký s tin cËy trªn th«ng b¸o m, ®Çu ra lµ 0 th× ngîc l¹i.
* C¸c yªu cÇu an toµn cña c¸c thµnh phÇn trong giao thøc:
- TÝnh kh«ng thÓ ph©n biÖt ®îc cña ch÷ ký: Ch÷ ký m« pháng SIGNsim ®îc t¹o b»ng thuËt to¸n thêi gian ®a thøc theo x¸c suÊt, nã nhËn th«ng b¸o m, 2 kho¸ c«ng khai PS, PC lµ ®Çu vµo vµ cho ra mét phÇn tö ®îc gäi lµ ch÷ ký m« pháng trong kh«ng gian ký. Ch÷ ký m« pháng nµy kh«ng thÓ ph©n biÖt so víi ch÷ ký thùc ®èi víi bÊt kú ngêi nµo mµ chØ hiÓu c¸c th«ng tin c«ng khai. Dùa vµo mét th«ng b¸o vµ mét ch÷ ký cã nghÜa, mét ngêi nµo ®ã kh«ng thÓ tù m×nh x¸c ®Þnh ®îc ch÷ ký lµ tin cËy.
- TÝnh kh«ng thÓ gi¶ m¹o cña ch÷ ký: Kh«ng tån t¹i thuËt to¸n thêi gian ®a thøc nhËn kho¸ c«ng khai PS cña ngêi ký; kho¸ bÝ mËt SC, kho¸ c«ng khai PC cña ngêi x¸c nhËn vµ truy cËp ®Õn ch÷ ký ngêi tin cËy SIGN, cho ra mét cÆp th«ng b¸o- ch÷ ký (m’, s’) kh«ng ®îc t¹o bëi SIGN víi x¸c suÊt ®¸ng kÓ.
- TÝnh chÝnh x¸c cña sù kiÓm tra: Kh«ng lu ý tíi sù dÝnh lÝu cña mét trong hai ngêi lµ ngêi ký hoÆc ngêi x¸c nhËn, c¸c giao thøc kiÓm tra lµ nhÊt qu¸n. Ngo¹i trõ x¸c suÊt kh«ng ®¸ng kÓ, giao thøc kiÓm tra tr¶ vÒ 1 nh lµ ®Çu ra cña ngêi kiÓm tra nÕu cÆp th«ng b¸o – ch÷ ký (m, s) tin cËy, hoÆc lµ 0 nÕu (m, s) lµ kh«ng tin cËy.
VI.3. C¸c lîc ®å ch÷ ký vµ phÐp chøng minh t¬ng t¸c
VI.3.1. Ký hiÖu
+ Ký hiÖu çç biÓu thÞ sù ghÐp nèi cña 2 d·y nhÞ ph©n.
+ LÊy p, q lµ c¸c sè nguyªn tè lín vµ xem r»ng p - 1 chia hÕt cho q
+ Cho g lµ phÇn tö sinh cña ph©n nhãm nh©n G cña Z bËc q.
+ Hµm Hash chÞu ®ùng sù va ch¹m H: {0, 1} ® Z (k =½q½, k > 160).
VI.3.2. Lîc ®å ch÷ ký Schnorr
§Þnh nghÜa : Cho y = gx modp, ch÷ ký Schnorr trªn th«ng b¸o m kiÓm tra sö dông kho¸ c«ng khai (g, y) lµ cÆp (u, v) Î Z ´ Z tho¶ m·n u = H(mççyççgççgvyu).
Ch÷ ký nh vËy cã thÓ ®îc tÝnh nÕu biÕt kho¸ bÝ mËt x b»ng c¸ch chän r Î Z (chän r ngÉu nhiªn thuéc Z ) vµ tÝnh:
u = H(mççyççgççgr) vµ v = r – ux mod q.
§Ó ®¬n gi¶n, ta dïng S(x, y)(m) biÓu thÞ ch÷ ký Schnorr trªn th«ng b¸o m ®· ®îc t¹o víi kho¸ bÝ mËt x vµ cã thÓ kiÓm tra víi kho¸ c«ng khai y.
VI.3.3. Ch÷ ký Chaum-Petersen dùa vµo ®¼ng thøc cña thuËt to¸n rêi r¹c
§Þnh nghÜa 2: Cho y1 = g vµ y2 = g, ch÷ ký Chaum-Petersen dùa vµo ®¼ng thøc cña thuËt to¸n rêi r¹c y1 vµ y2 víi c¬ sè lµ g1, g2 trªn th«ng b¸o m lµ cÆp (u, v) Î Z ´ Z tho¶ m·n:
u = H(mççy1ççy2ççg1ççg2ççgyççgy)
Díi m« h×nh Oracle ngÉu nhiªn, ch÷ ký nh thÕ cã thÓ ®îc thµnh lËp nÕu biÕt kho¸ bÝ mËt x tho¶ m·n y1 = g vµ y2 = g. Ch÷ ký sau ®ã ®îc tÝnh b»ng c¸ch chän r Î Z, tÝnh:
u = H(mççy1ççy2ççg1ççg2ççgyççgy)
vµ v = r – ux mod q.
Ta cã thÓ viÕt l¹i u nh sau:
Tõ v = r – ux modq Þ r = v + ux modq
Theo gi¶ thiÕt: y1 = g
Þ gy= g(g)u = g = g
T¬ng tù: y2 = g
Þ gy= g(g)u = g = g
VËy: u = H(mççy1ççy2ççg1ççg2ççgççg)
§Ó ®¬n gi¶n, ta dïng CP(x, y1, y2, g1, g2)(m) biÓu thÞ ch÷ ký Chaum-Petersen trªn th«ng b¸o m ®· ®îc t¹o ra víi kho¸ bÝ mËt x tho¶ m·n ®¼ng thøc cña thuËt to¸n rêi r¹c y1, y2 víi c¬ sè lÇn lît lµ g1, g2.
VI.3.4. PhÐp chøng minh ký t¬ng t¸c Fujioka-Okamoto-Ohta cña ®¼ng thøc
PhÐp chøng minh ký ®¼ng thøc log(y1) º log(y2) lµ giao thøc hoÆc chøng minh log(y1) º log(y2) hoÆc chøng minh log(y1) ¹ log(y2). Giao thøc cña Fujioka-Okamoto-Ohta chøng minh ®¼ng thøc (hoÆc kh«ng lµ ®¼ng thøc) cña thuËt to¸n rêi r¹c y1, y2 víi c¬ sè lÇn lît lµ g1, g2. Giao thøc nh sau:
V (ngêi kiÓm tra) C (ngêi x¸c nhËn)
u, v Î Z
a = gymodp
k, k’, w Î Z
r1 = g; r2 = g
r = g; r= g
a = gy?
z = k – (v + w) c
z’ = k’ – (v + w) k
gy = r1
gr = r
gr = r
= ( g2z y º r2)
Ta cã thÓ diÔn gi¶i giao thøc trªn thµnh c¸c bíc sau:
Ngêi kiÓm tra V chän u, v ngÉu nhiªn Î Z vµ tÝnh
a = gymodp, råi göi a cho ngêi x¸c nhËn C
Ngêi x¸c nhËn C chän k, k’, w ngÉu nhiªn Î Zvµ tÝnh
r1 = g; r2 = g; r = g; r= g
Sau ®ã göi r1, r2, r1’, r2’ cho V
Khi nhËn ®îc r1, r2, r1’, r2’ do C göi, V göi l¹i C hai gi¸ trÞ u, v
Ngêi x¸c nhËn nhËn ®îc u, v th× kiÓm tra ®¼ng thøc
a = gymodp.
NÕu ®óng, C göi cho V hai gi¸ trÞ z, z’ ®îc tÝnh nh sau:
z = k – (v + w) c
z’ = k’ – (v + w) k
Ngêi kiÓm tra V sÏ kiÓm tra xem c¸c ®¼ng thøc sau cã x¶y ra hay kh«ng?
gy = r1
gr = r
gr = r
= ( g2z y º r2)
KÕt thóc giao thøc ®Çu ra cña ngêi kiÓm tra lµ . PhÐp chøng minh tr¶ vÒ 1 nÕu log(y1) º log(y2), tr¶ vÒ 0 nÕu log(y1) ¹ log(y2).
Giao thøc ®îc ký hiÖu nh sau:
Bi – Proof[log(y1) º log(y2)]
Chó ý: ë ®©y y1, y2 ®îc tÝnh nh sau:
y1 = g1c mod p, y2 = g2c mod p
VI.4. CÊu tróc lîc ®å ch÷ ký ngêi x¸c nhËn kh«ng thÓ chèi bá
VI.4.1. T¹o kho¸
+ Ngêi ký chän s Î Z, thiÕt lËp cÆp kho¸ bÝ mËt vµ c«ng khai (S S, PS) víi SS = s, PS = gs modp.
+ Ngêi x¸c nhËn chän c Î Z, thiÕt lËp cÆp kho¸ bÝ mËt vµ c«ng khai (SC, PC ) víi SC = c, PC = gc modp.
VI.4.2. T¹o ch÷ ký
§Ó t¹o ch÷ ký s trªn th«ng b¸o m, ngêi ký S chän r Î Z, t¹o:
a : = gr, as : = P, as+c : = (PSPC), gs : = PS, gs+c : =PSPC
Sau ®ã S tÝnh s1 = CP(r, a, as+c, g, gs+c)(m) vµ s2 = S(sr, g, as)(s1).
Þ Ch÷ ký s cña ngêi ký trªn th«ng b¸o m lµ: s = (s1, s2).
VI.4.3. KiÓm tra ch÷ ký
§Çu tiªn ngêi kiÓm tra sÏ kiÓm tra ®é tin cËy cña (s1, s2) víi s1 lµ ch÷ ký Chaum-Petersen ®¼ng thøc cña thuËt to¸n rêi r¹c tin cËy trªn th«ng b¸o m vµ s2 lµ ch÷ ký Schnorr tin cËy trªn s1. Ngêi kiÓm tra dõng nÕu mäi sù kiÓm tra ®Òu dÉn ®Õn kÕt qu¶ kh«ng tin cËy. Ngîc l¹i, ngêi kiÓm tra tiÕp tôc kiÓm tra ch÷ ký nh sau:
- §èi víi ngêi ký:
§Çu ra v cña ngêi kiÓm tra cña (SVer(SS), VVer())(m, s, PS, PC) ®îc tÝnh:
v = Bi-Proof [log(as) º logg(gs)]
Trong giao thøc nµy ngêi ký ®ãng vai trß ngêi chøng minh.
- §èi víi ngêi x¸c nhËn:
§Çu ra v cña ngêi kiÓm tra cña (CVer(SC), VVer())(m, s, PS, PC) ®îc tÝnh:
v = Bi-Proof [logg (gc ) º log(ac)]
Trong giao thøc phÐp chøng minh ký nµy, ngêi x¸c nhËn gi÷ nhiÖm vô nh ngêi chøng minh vµ ac = as+c /as.
Trong c¶ 2 sù kiÓm tra cña ngêi ký vµ ngêi x¸c nhËn, ngêi kiÓm tra chÊp nhËn ch÷ ký khi vµ chØ khi v =1.
VI.4.4. Gi¶i thÝch cÊu tróc b»ng trùc gi¸c
Ta thÊy r»ng trong cÊu tróc nµy, ngêi ký cã kho¸ bÝ mËt s, kho¸ c«ng khai gs, ngêi x¸c nhËn cã kho¸ bÝ mËt c, kho¸ c«ng khai gc.
Gi¸ trÞ gs+c ®îc tÝnh:
gs+c =PS.PC = gsgc (v× gs = PS, gc = PC )
Ch÷ ký ngêi x¸c nhËn kh«ng thÓ chèi bá s gåm 2 ch÷ ký lµ s1, s2. Trong ®ã s1 lµ ch÷ ký Chaum-Petersen ®îc t¹o ra víi kho¸ bÝ mËt r1 = r, kiÓm tra víi kho¸ c«ng khai a = gr vµ as+c = g; s2 lµ ch÷ ký Schnorr ®îc t¹o víi kho¸ bÝ mËt r2 = rs, kiÓm tra víi kho¸ c«ng khai as = g.
B»ng trùc gi¸c thÊy r»ng, ch÷ ký lµ luËn chøng cña tri thøc kho¸ bÝ mËt. Nh vËy nÕu mét ngêi nµo ®ã cã thÓ t¹o ra s1, s2 th× ngêi ®ã ph¶i cã tri thøc cña r1, r2. NÕu ngêi ®ã cã thÓ chøng minh r»ng r2 = r1s nghÜa lµ ch÷ ký ®ã lµ tin cËy.
Cã 2 c¸ch ®Ó chøng minh r2 = r1s nh sau:
* C¸ch 1: Chøng minh r»ng: logg(gs) º log(as). C¸ch nµy yªu cÇu tri thøc cña logg (gs ), v× vËy chØ cã thÓ thùc hiÖn bëi ngêi ký.
* C¸ch 2: Chøng minh r»ng: logg(gc ) = log(as+c /as). C¸ch nµy yªu cÇu tri thøc cña logg(gc), v× vËy chØ cã thÓ ®îc thùc hiÖn bëi ngêi x¸c nhËn.
VI.5. PhÐp ph©n tÝch an toµn
§Ó chØ ra r»ng cÊu tróc lµ an toµn, chóng ta gi¶ sö r»ng lîc ®å ch÷ ký Schnorr vµ ch÷ ký Chaum-Petersen dùa vµo ®¼ng thøc cña thuËt to¸n rêi r¹c lµ an toµn. PhÐp chøng minh ký t¬ng t¸c Fujioka-Okamoto-Ohta cña ®¼ng thøc lµ an toµn, ®óng ®¾n vµ chøng cí kh«ng thÓ ph©n biÖt ®îc. PhÐp chøng minh an
toµn nµy cã thÓ ®îc chøng minh trong m« h×nh Oracle ngÉu nhiªn. Díi ®©y lµ c¸c chøng minh chØ ra r»ng cÊu tróc cña ch÷ ký ngêi x¸c nhËn kh«ng thÓ chèi bá lµ kh«ng thÓ gi¶ m¹o, kh«ng thÓ ph©n biÖt ®îc vµ sù kiÓm tra ch÷ ký lµ nhÊt qu¸n.
VI.5.1.Ch÷ ký kh«ng thÓ gi¶ m¹o
§Þnh nghÜa. §Æc tÝnh kh«ng thÓ gi¶ m¹o ch÷ ký v÷ng ch¾c.
Ngo¹i trõ víi x¸c suÊt kh«ng ®¸ng kÓ, kh«ng tån t¹i thuËt to¸n thêi gian ®a thøc theo x¸c suÊt A mµ cã thÓ sinh ra ch÷ ký s trªn th«ng b¸o ®Æc biÖt m, kiÓm tra víi kho¸ c«ng khai y khi truy cËp ®Õn ch÷ ký Oracle cña tÊt c¶ kho¸ c«ng khai y* cho tÊt c¶ c¸c th«ng b¸o cÇn truy cËp ®Õn y ®Ó ®îc th«ng b¸o m. ë ®©y khi mäi th«ng b¸o m*, ch÷ ký Oracle cña kho¸ c«ng khai y* sinh ra ch÷ ký s* cña m* kiÓm tra víi y*.
B»ng trùc gi¸c, ®Æc tÝnh kh«ng thÓ gi¶ m¹o ch÷ ký v÷ng ch¾c cã nghÜa r»ng khi truy cËp ®Õn ch÷ ký Oracle cña tÊt c¶ c¸c ch÷ ký c«ng khai tin cËy cho tÊt c¶ c¸c th«ng b¸o cÇn ch÷ ký mong muèn, nã lµ kh«ng thÓ sinh ra ch÷ ký s díi kho¸ c«ng khai mong muèn, trªn th«ng b¸o mong muèn m.
§Þnh nghÜa nµy thuyÕt phôc h¬n kh¸i niÖm ch÷ ký an toµn chuÈn. Nã lµ b¶n sao t¬ng ®¬ng cña an toµn ®èi lËp víi c¸c lùa chän thÝch hîp ®Æc tÝnh tÊn c«ng v¨n b¶n mËt m· cña lîc ®å gi¶i m·. Do ®ã lîc ®å ch÷ ký lµ kh«ng thÓ gi¶ m¹o v÷ng ch¾c nÕu nã tho¶ m·n ®Æc tÝnh kh«ng thÓ gi¶ m¹o ch÷ ký v÷ng ch¾c.
Bæ ®Ò: Ch÷ ký s = (s1, s2) lµ ch÷ ký qua ®îc sù kiÓm tra chØ nÕu s1 = CP(r, a, as+c, g, gs+c)(m), s2 = S(sr, g, as)(s1) vµ r1 = r2.
Chøng minh:
NÕu s lµ tin cËy, s1 vµ s2 ®îc thµnh lËp lµ s1 = CP(r, a, as+c, g, gs+c)(m), s2 = S(sr, g, as)(s1). Cßn l¹i chøng tá r1 = r2. Chóng ta gi¶ sö r»ng s kh¸c 0.
Ch÷ ký s ®îc coi lµ tin cËy nÕu nã tr¶i qua mét trong hai bíc thö kiÓm tra, ®ã lµ kiÓm tra ®èi víi ngêi x¸c thùc vµ kiÓm tra ®èi víi ngêi ký.
KiÓm tra ®èi víi ngêi x¸c nhËn ph¶i thùc hiÖn phÐp chøng minh ký Bi – Proof [logg(gc) º log(ac)]. Do ®ã nã chØ ra r»ng ac = ac hoÆc ac = as+c/ as. H¬n n÷a s1, s2 lµ ®óng Þ tån t¹i r1 vµ sr2, xem r»ng: as+c =g = g(s+c)r , as = gsr
Þ ac = g= g/ g
Þ g =g
V× s ¹ 0 Þ r1 = r2.
Víi trêng hîp kiÓm tra ®èi víi ngêi ký t¬ng tù nh trªn.
§Þnh lý: Trong m« h×nh Oracle ngÉu nhiªn, ch÷ ký ngêi x¸c nhËn kh«ng thÓ chèi bá lµ kh«ng thÓ gi¶ m¹o.
Chøng minh:
Theo bæ ®Ò trªn, ch÷ ký s+ lµ tin cËy nÕu s+1 = CP(r1, a, as+c, g, gs+c)(m), s+2 = S(sr2, g, as)(s+1) vµ r1 = r2. §iÒu nµy cã nghÜa r»ng nÕu tån t¹i thêi gian ®a thøc ®èi thñ A thµnh c«ng t¹o ra c¶ s vµ s, sau ®ã A ph¶i biÕt r1, r2s vµ kho¸ bÝ mËt s. V× vËy chØ cã mét viÔn c¶nh r»ng A cã thÓ gi¶ m¹o s+ mµ kh«ng cÇn truy cËp ®Õn kho¸ bÝ mËt s ®Ó ®¹t ®îc hoÆc s hoÆc s. Gi¶ sö A ®¹t ®îc s, s h×nh thµnh tõ ch÷ ký s* = (s,s). Theo bæ ®Ò trªn, ®iÒu nµy cã nghÜa lµ s, s ®· ®ùoc t¹o ra cïng mét kho¸ bÝ mËt r2s Þ A biÕt bÝ mËt ®Ó t¹o s. §iÒu nµy m©u thuÉn víi ®Æc tÝnh kh«ng thÓ gi¶ m¹o v÷ng ch¾c cña s2.
VI.5.2. Ch÷ ký kh«ng thÓ ph©n biÖt
§Þnh nghÜa 4: (ch÷ ký bÞ gi¶ m¹o)
Cho x, gy = gy vµ gz = gz, ch÷ ký gi¶ m¹o s* = (s, s) trªn th«ng b¸o m ®îc tÝnh:
s= CP(x, X, Xy+c, g, gy+c) vµ s= S(z, g, yz)( s)
Trong ®ã c, gc lµ kho¸ bÝ mËt vµ c«ng khai cña ngêi x¸c nhËn, X = gx, Xy+c = g vµ gy+c = gygc.
Ch÷ ký nh trªn ®îc ®Æt díi m« h×nh Oracle ngÉu nhiªn. PhÇn ®Çu cña ch÷ ký lµ s cã thÓ lu«n lu«n ®îc thµnh lËp khi biÕt x. PhÇn tiÕp theo cña ch÷ ký lµ s, ch÷ ký Schnorr kiÓm tra dïng kho¸ c«ng khai gz = gz. Ch÷ ký Schnorr (u,v) ®îc gi¶ m¹o trong m« h×nh Oracle ngÉu nhiªn. §iÒu nµy ®îc thùc hiÖn b»ng c¸ch chän u,v ngÉu nhiªn vµ Oracle ngÉu nhiªn gi¶ m¹o trong c¸ch mµ nã cã c¸c ®Çu ra u víi ®Çu vµo (mççyççgççgvyu).
§Þnh lý: Trong m« h×nh Oracle ngÉu nhiªn, nÕu tån t¹i ngêi gi¶ m¹o A mµ cã thÓ ph©n biÖt ch÷ ký tin cËy tõ ch÷ ký gi¶ m¹o ®· ®îc t¹o ra dïng ®Þnh nghÜa ë trªn trong thêi gian ®a thøc theo x¸c suÊt th× cã mét thuËt to¸n gi¶i quyÕt vÊn ®Ò Diffie – Hellman trong thêi gian ®a thøc theo x¸c suÊt.
Chøng minh:
Gi¶ sö cã mét ®èi thñ A mµ cã thÓ ph©n biÖt ch÷ ký tin cËy s tõ ch÷ ký gi¶ m¹o s* dïng th«ng tin c«ng khai.
Ký hiÖu tËp hîp cña tÊt c¶ (a, gb, gc½ab = c) lµ D vµ ( a, gb, gc ½aÎR Z ) lµ X. LÊy t* = (x1, gy, gz ) Î D, t+ = (x2, gy, gz )Î X. Theo ®Þnh nghÜa cña ch÷ ký gi¶ m¹o, A cã thÓ t¹o ra 2 ch÷ ký gi¶ m¹o s*, s+ lÇn lît tõ t*, t+. ë ®ay kho¸ c«ng khai cña ngêi ký lµ gy.
Theo bæ ®Ò trong phÇn [VI. 5. 1], s* lµ ch÷ ký tin cËy, s+ lµ ch÷ ký kh«ng tin cËy. Ngoµi ra sù thuËn lîi cña A trong ph©n biÖt s* tõ s+ lµ kh«ng ®¸ng kÓ h¬n ph©n biÖt gi÷a t* vµ t+ . V× vËy nÕu A cã kh¶ n¨ng nhËn biÕt ch÷ ký chÝnh x¸c tõ s* vµ s+, chóng ta nãi r»ng t* hoÆc t+ h×nh thµnh tõ D. A ®· gi¶i quyÕt ®îc vÊn ®Ò cña Diffie – Hellman.
VI.5.3. TÝnh nhÊt qu¸n cña kiÓm tra ch÷ ký
Theo bæ ®Ò phÇn [VI. 5. 1], ch÷ ký lµ tin cËy chØ khi hoÆc as+c /as = ac hoÆc as = as. Nã kh«ng phøc t¹p ®Ó chØ ra sù t¬ng quan ®èi lËp, nãi c¸ch kh¸c nÕu ®¹t ®îc hoÆc as+c /as = ac hoÆc as = as th× s1 lµ phÐp chøng minh hîp lý cña tri thøc vµ ®¼ng thøc, s2 lµ ch÷ ký tin cËy, s lµ ch÷ ký ®óng. V× vËy tÝnh
nhÊt qu¸n cña sù kiÓm tra ch÷ ký tu©n theo tÝnh ®óng ®¾n vµ hîp lý cña phÐp chøng minh ký cña tri thøc.
VI. 6. Ch÷ ký ngêi x¸c nhËn kh«ng thÓ chèi bá mï qu¸ng vµ c¸c øng dông
VI. 6. 1. CÊu tróc
Giao thøc ch÷ ký ngêi x¸c nhËn kh«ng thÓ chèi bá mï qu¸ng gåm ®Æc thï cña ch÷ ký Schnorr mï qu¸ng vµ ®Æc thï cña ch÷ ký Chaum – Petersen cña ®¼ng thøc mï qu¸ng thùc hiÖn song song víi nhau.
CÊu tróc nh sau:
Ngêi nhËn Ngêi ký
p, r1, r2 ÎZ r, r1, r2 Î Z
a = gr
as = gsr
as+c = g
w2 = g
w1 = g
W1 = g
=
=
=
w2 = w2p. g
w1 = w1p. g
= W1p. g
v = H(m ½½½½½½½½w2½½w1½½)
u = v/p
v1 = r1 – u(r)
v2 = r2 – u(rs)
= v1p + r1
= v2p + r2
s+1 = (v, , , , w1, 1)
s+2 = (v, , , w2)
Trong cÊu tróc nµy, ch÷ ký ngêi x¸c nhËn kh«ng thÓ chèi bá mï qu¸ng lµ s = (s+1, s+2), chóng ta ®¸nh l¹c híng mét ®Æc thï t¬ng t¸c cña giao thøc t¹o ch÷ ký tõ t¹o s1 = CP(r, a, as+c, g, gs+c)(m), s2 = S(sr, g, as)(s1) ®Ó t¹o s+1 = CP(rp, b, bs+c, g, gs+c)(m), s+2 = S(srp, g, bs)(s+1) trong ®ã b = ap , bs = a vµ bs+c = a. Ngêi trung gian tøc ngêi nhËn ch÷ ký trong giao thøc biÕt gi¸ trÞ p.
§iÒu nµy kh«ng phøc t¹p ®Ó kiÓm tra s+1 lµ ch÷ ký Chaum – Petersen tin cËy trªn th«ng b¸o m vµ s+2 lµ ch÷ ký Schnorr tin cËy trªn th«ng b¸o (mïïs+1). Do ®ã s+ = (s+1, s+2) lµ ch÷ ký ngêi x¸c nhËn kh«ng thÓ chèi bá tin cËy.
VI. 6. 2. Lîc ®å tr¶ tríc cã thÓ leo thang
Chóng ta còng ®· kh¸ quen víi c¸c hÖ thèng tr¶ tiÒn tríc ®Ó mua mét s¶n phÈm nµo ®ã nh ®Æt mua t¹p chÝ, truyÒn h×nh c¸p… HiÖn nay, cïng víi sù ph¸t triÓn m¹nh mÏ cña c«ng nghÖ th«ng tin vµ sù giao lu th«ng tin ngµy cµng trë nªn phæ biÕn trªn c¸c m¹ng truyÒn th«ng th× ngêi ta còng nghÜ tíi c¸c ho¹t ®éng kinh doanh trªn m¹ng Internet. C¸c ho¹t ®éng th¬ng m¹i cña c¸c dÞch vô trùc tuyÕn trªn Internet ®ßi hái ph¶i nhanh vµ cã c¸c ph¬ng thøc tr¶ tiÒn ®¹t hiÖu qu¶ cao. Gi¶i ph¸p phæ biÕn lµ micropayment nghÜa lµ ngêi sö dông tr¶ mét sè tiÒn nhá cho tong s¶n phÈm mua trùc tuyÕn. Gi¶i ph¸p lùa chän lµ tr¶ tríc, ngêi sö dông tr¶ tríc víi dÞch vô mét sè tiÒn cè ®Þnh gäi lµ lÖ phÝ hµng n¨m. Ngêi sö dông sau ®ã ®îc cÊp mét giÊy chøng nhËn tr¶ tríc mµ cho
phÐp truy cËp ®Õn mäi s¶n phÈm cña dÞch vô. Sù thuËn lîi cña dÞch vô tr¶ tríc trªn micropayment lµ nã gi¶m mét lîng lín qu¸ tr×nh tiÕn hµnh c«ng viÖc mua b¸n cña sù giao dÞch khi mua mét s¶n phÈm ®Þnh gi¸ nhá. Trong thùc tÕ, kh«ng x¶y ra viÖc ngêi cung cÊp dÞch vô cã thÓ cung cÊp t¸t c¶ c¸c dÞch vô mong muèn tíi ngêi sö dông. Ngoµi ra nã bÊt tiÖn víi ngêi sö dông khi ph¶i gi÷ m· sè cña giÊy chøng nhËn tr¶ tríc, nÕu mçi s¶n phÈm ngêi sö dông ph¶i gi÷ mét giÊy chøng nhËn tr¶ tríc th× ®iÒu nµy sÏ g©y phiÒn to¸i cho ngêi sö dông. Gi¶i ph¸p mong muèn lµ sÏ liªn hiÖp c¸c c«ng ty lín cña nh÷ng ngêi cung cÊp dÞch vô ®Ó cung cÊp nhiÒu lo¹i kh¸c nhau cña c¸c dÞch vô trùc tuyÕn. Trong thø tù truy cËp ®Õn c¸c dÞch vô nµy, mçi ngêi sö dông chØ cÇn mét giÊy chøng nhËn ®Æt tríc víi c¸i mµ anh ta ®· tr¶ tiÒn lÖ phÝ cè ®Þnh hµng n¨m. Khi ®ã ngêi sö dông cã thÓ truy cËp ®Õn tÊt c¶ c¸c dÞch vô cung cÊp bëi bÊt kú thµnh phÇn nµo trong liªn hiÖp c¸c c«ng ty.
Ch÷ ký mï qu¸ng cã thÓ dïng ®Ó thiÕt kÕ mét hÖ thèng tr¶ tríc víi quyÒn riªng t cña ngêi sö dông. Trong m« h×nh nµy, giÊy chøng nhËn tr¶ tríc lµ ®a ra ch÷ ký ngêi x¸c nhËn kh«ng thÓ chèi bá mï qu¸ng bëi ngêi qu¶n lý cña liªn hiÖp c¸c c«ng ty. §Ó truy cËp tíi c¸c dÞch vô trùc tuyÕn, ngêi sö dông chøng tá giÊy chøng nhËn tr¶ tríc tin cËy víi ngêi cung cÊp dÞch vô, ngêi cã vai trß ngêi x¸c nhËn trong lîc ®å ch÷ ký.
ThuËn lîi chÝnh cña c¸ch nµy lµ gi¶m tr¸ch nhiÖm mét lîng lín qu¸ tr×nh tiÕn hµnh c«ng viÖc mua b¸n cña viÖc tr¶ mét lîng nhá trong khi, thËm chÝ cung cÊp c¶ quyÒn riªng t cho ngêi sö dông.
KÕt luËn
Ngµy nay, cïng víi sù ph¸t triÓn cña khoa häc c«ng nghÖ hiÖn ®¹i vµ C«ng nghÖ th«ng tin, ngµnh mËt m· ®· cã nh÷ng bíc ph¸t triÓn m¹nh mÏ, ®¹t ®îc nhiÒu kÕt qu¶ lý thuyÕt s©u s¾c vµ t¹o c¬ së cho viÖc ph¸t triÓn c¸c gi¶i ph¸p b¶o mËt, an toµn th«ng tin trong mäi lÜnh vùc ho¹t ®éng cña con ngêi. §Æc biÖt lµ nh÷ng u ®iÓm cña ch÷ ký sè. Ch÷ ký sè ®îc biÕt ®Õn khi sù trao ®æi th«ng tin ngµy cµng phæ biÕn trªn c¸c m¹ng truyÒn th«ng ë n¬i mµ ch÷ ký tay kh«ng thÓ ph¸t huy t¸c dông.
Trong ®å ¸n nµy, t«i ®· t×m hiÓu vÒ lîc ®å ch÷ ký sè ngêi x¸c nhËn kh«ng thÓ chèi bá. Tuy cßn nhiÒu ®iÓm cÇn ph¶i nghiªn cøu vµ hoµn thiÖn nhng do thêi gian vµ tr×nh ®é hiÓu biÕt cßn h¹n chÕ nªn kh«ng tr¸nh khái nh÷ng nhîc ®iÓm, rÊt mong sù gãp ý cña c¸c ThÇy, C« vµ c¸c b¹n.
Cuèi cïng, em xin ch©n thµnh c¶m ¬n thÇy gi¸o TS. NguyÔn Ngäc C¬ng ®· tËn t×nh chØ b¶o, híng dÉn gióp em hoµn thµnh ®å ¸n nµy.
Tµi liÖu tham kh¶o
TS. NguyÔn Ngäc C¬ng – “Bµi gi¶ng An toµn th«ng tin” – 1999
NguyÔn ThÞ Mêi Ph¬ng – “LuËn v¨n th¹c sÜ “- 2003
3. D.R Stinson – “Cryptography Theory and Practice”, CRC press – 1995
4. Moti Yung – “Weaknesses of undeniable Signature Schemes”
5. David Chaum – “Designated Confirmer Signatures”
4. Khanh Nguyen, Yi Mu, Vijay Varadharajan – “Undeniable Confirmer Signature”
Môc lôc
Lêi nhËn xÐt
Môc lôc
§Æt vÊn ®Ò 1
Ch¬ng I: Tæng quan vÒ ng«n ng÷ C 4
I.1. LÞch sö h×nh thµnh vµ ph¸t triÓn 4
I.2. C¸c tÝnh chÊt ®Æc trng cña ng«n ng÷ 5 Ch¬ng II: Ch÷ ký sè 7
II. 1. Giíi thiÖu chung vÒ ch÷ ký sè 7
II.2. §Þnh nghÜa lîc ®å ch÷ ký sè 8
II.3. Mét sè lîc ®å ch÷ ký sè 9
II.3.1. Lîc ®å ch÷ ký RSA 9
II.3.2.Lîc ®å ch÷ ký ElGamal 11
Ch¬ng III: Hµm Hash 15
III.1. Giíi thiÖu 15
III.2. §Þnh nghÜa 16
III.3. Mét sè hµm Hash sö dông trong lîc ®å ch÷ ký sè 16
III.3.1.C¸c hµm Hash ®¬n gi¶n 16
III.3.2. Kü thuËt khèi xÝch 18
III.3.3. C¸c hµm Hash më réng 18
III.3.4. Hµm Hash MD4 19
Ch¬ng IV: Ch÷ ký chèng chèi bá 25
IV.1. Giíi thiÖu 25 IV.2. Lîc ®å ch÷ ký sè chèng chèi bá 25
IV.2.1. ThuËt to¸n ký 25
IV.2.2. Giao thøc kiÓm tra 26
IV.2.3. Giao thøc chèi bá 27
IV.3. C¸c ®Þnh lý 29
IV.3.1. §Þnh lý 1 29
IV.3.2. §Þnh lý 2 30 IV.3.3. §Þnh lý 3 31
IV.4. VÊn ®Ò cÇn gi¶i quyÕt 33
Ch¬ng V: Ch÷ ký ngêi x¸c nhËn ®îc chØ ®Þnh 35
V.1. Giíi thiÖu 35
V.2. HÖ thèng c¬ së 37
V.3. Giao thøc ký 38
V.3.1. T¹o kho¸ 38
V.3.2. T¹o ch÷ ký 38
V.3.3. Giao thøc kiÓm tra 39
V.4. Giao thøc x¸c nhËn 40
V.5. Giao thøc chuyÓn ®æi 41
V.6. Tæng qu¸t 42
Ch¬ng VI: Ch÷ ký ngêi x¸c nhËn kh«ng thÓ chèi bá 43
VI.1. Giíi thiÖu 43
VI.2. M« h×nh cña ch÷ ký ngêi x¸c nhËn chèng chèi bá 44
VI.3. C¸c lîc ®å ch÷ ký vµ phÐp chøng minh ký t¬ng t¸c 46
VI.3.1. Ký hiÖu 46
VI.3.2. Lîc ®å ch÷ ký Schnorr 46
VI.3.3. Ch÷ ký Chaum – Petersen dùa vµo ®¼ng thøc cña
thuËt to¸n rêi r¹c 46
VI.3.4. PhÐp chøng minh ký t¬ng t¸c Fujioka –
Okamoto – Ohto cña ®¼ng thøc 47
VI.4. CÊu tróc 49
VI.4.1. T¹o kho¸ 49
VI.4.2. T¹o ch÷ ký 49
VI.4.3. KiÓm tra ch÷ ký 49
VI.4.4. Gi¶i thÝch cÊu tróc cña lîc ®å ch÷ ký b»ng trùc gi¸c 50
VI.5. PhÐp ph©n tÝch an toµn 50
VI.5.1. Ch÷ kýkh«ng thÓ gi¶ m¹o 51
VI.5.2. Ch÷ ký kh«ng thÓ ph©n biÖt ®îc 52
VI.5.3. TÝnh nhÊt qu¸n cña kiÓm tra ch÷ ký 53
VI.6. Ch÷ ký ngêi x¸c nhËn kh«ng thÓ chèi bá mï qu¸ng vµ c¸c
øng dông 54
VI.6.1. CÊu tróc 54
VI.6.2Lîc ®å tr¶ tríc cã thÓ leo thang 55
KÕt luËn 57
Tµi liÖu tham kh¶o 58
Các file đính kèm theo tài liệu này:
- 18011.DOC