TRƢỜNG ĐẠI HỌC CÔNG NGHỆ
LẠI THỊ KIM CHINH
TÌM HIỂU, NGHIÊN CỨU MỘT SỐ CHỮ KÝ
ĐẶC BIỆT DÙNG TRONG BỎ PHIẾU ĐIỆN TỬ
LUẬN VĂN THẠC SĨ
Hà Nội - 2014
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ
TÌM HIỂU, NGHIÊN CỨU MỘT SỐ CHỮ KÝ
ĐẶC BIỆT DÙNG TRONG BỎ PHIẾU ĐIỆN TỬ
LUẬN VĂN THẠC SĨ
NGƢỜI HƢỚNG DẪN KHOA HỌC: PGS.TS Trịnh Nhật Tiến
Hà Nội - 2014
3
LỜI CAM ĐOAN
7
Ngƣời cam đoan
Lại Thị Kim Chinh
4
LỜI MỞ ĐẦU
5
BẢNG DIỄN GIẢI CÁC CHỮ VIẾT TẮT
STT
CHỮ VIẾT TẮT
DIỄN GIẢI
1
BCNN
2
UCNN
3
UCLN
4
RSA
Ronald Rivest, Adi SAdleman.
5
DSS
Digital Signature Standard
6
KB
Ki
7
MB
8
MD
Message-Digest algorithm
9
MD4, MD5
Message-Digest algorithm 4, Message-Digest
algorithm 5
10
SHA
Secure Hash Algorithm
11
CT1, CT2, CT3
12
KP1, KP2, KP3
13
14
15
KT
16
KP
u
17
CMT
18
TPD
Trusted Public Directory
19
XMTT
6
DANH MỤC HÌNH VẼ
19
c 2 40
c 3 41
3.1.
50
51
53
55
56
64
64
65
66
67
67
68
68
69
70
70
71
71
72
72
73
73
7
DANH MỤC BẢNG BIỂU
17
Error! Bookmark
not defined.
57
58
8
MỤC LỤC
1
4
8
11
11
11
11
1.1.1.2. Ngu 11
- 11
- 11
12
1.1.2.1. 12
13
1.1.2.3. NCyclic ) 13
14
18
18
18
19
19
20
21
22
22
1.2.3.2. H 22
24
25
25
26
26
26
26
9
27
28
28
28
29
31
31
31
31
2.1.3. S 32
34
34
34
34
2.2.2.2 35
35
2.2. 35
38
44
47
47
47
47
47
48
49
49
49
49
3.3.
50
50
52
54
10
55
(mixing the votes) 58
63
63
63
63
65
65
68
74
75
11
Chương 1. MỘT SỐ KHÁI NIỆM CƠ BẢN
1.1. CÁC KHÁI NIỆM CƠ SỞ
1.1.1. Một số khái niệm trong số học
1.1.1.1. Số nguyên tố
1/.Khái niệm:
2/ Ví dụ:
100:2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89,
97
1.1.1.2. Nguyên tố cùng nhau
1/ Khái niệm: Trong a b
nhau .
2/ Ví dụ:
1.1.1.3. Đồng dưMô-đun (Modulo)
1/ Định nghĩa:
--
b (mod n)
2/ Ví dụ:
11 5 (mod 3)
1.1.1.4. Ước số - Bội số
|
|
+ Ước số chung lớn nhất (UCLN)
12
Ký hiệu: c = gcd (a,b); (great common divisor)
+ Bội số chung nhỏ nhất (BCNN)c|a, c|b c|d
Ký hiệu: d = lcm (a,b); (least common multiple)
Ví dụ:.
+ Tập Z
và
+ Z
n
= {0, 1, 2, . , n-
+
= {eZ
n
}
Ví du:
Z
7
7
7
| = 7.
7
7
7
= 6
1.1.2. Một số khái niệm trong đại số
1.1.2.1.Cấu trúc nhóm
1/. Khái niệm nhóm
- Nhóm
+
a * (b * c) = (a * b) * c a, b, c G
+
a * 0 = 0 * a a G
+
-1
a * a
-1
= a
-1
* a = 0
:a * b = b * a a, b G
- Cấp của nhóm G .
- Nhóm Abel (G, *)
13
Ví dụ:
-
-
-
2/. Nhóm con của nhóm (G, *)
G, S
-
- S (x, y S)
- x
S (xS)
1.1.2.2. Nhóm hữu hạn
Định nghĩa
Ví dụ:
a.
1.1.2.3. Nhóm chu kỳ (Cyclic )
1/. Khái niệm nhóm Cyclic
Cyclic
g
n
Ví dụ
, *Cyclic g=1.
14
2/. Cấp của nhóm Cyclic
Cyclic
-
n
nhau: e, g
1
, g
2
, g
3
, . . . , g
n - 1
Cyclic
-
n
.
Ví dụ: (Z
+
Cyclic
Cyclic n g
n
= e.
3/. Cấp của một phần tử trong nhóm Cyclic
α G
α
d
= ee G.
Nhα α = e.
1.1.2.4. Nhóm (
, phép nhân mod n)
1/. Khái niệm tập thặng dƣ thu gọn theo modulo
-
n
={0, 1, 2, . , n-1} Z
n
=0. (Z
n
n.
-
= {x Z
n
0).
(n).
-
-
k
, hay 2p
k
2/. Một số kết quả đã đƣợc chứng minh
- Định lý Lagrange:
- Hệ quả:
(n).
- Định lý:
b
(n)
(p) = p 1.
b
(p)
1 (mod n), hay b
p -1
1 (mod n).
:
sao
cho d
= e trong
d
e (mod n).
- Định lý:
15
3/. Phần tử nghịch đảo đối với phép nhân
- Định nghĩa: Cho a Z
n
Z
n
sao cho a.b 1 p
n
-1
- Định lý: UCLN (a, n) = 1 Z
n
Chứng minh:
-1
-1
-1
-1
-1
-1
- Hệ quả
-
+ Input: a Z
n
, n
+
Procedure
Invert(a,n);
begin
g
0
:=n; g
1
:=a; u
0
:=1; u
1
:=0; v
0
:=0; v
1
:=1; i:=1;
while g
i
0 do
begin
y := g
i-1
div g
i
; g
i+1
:= g
i-1
– y.g
i
;
u
i+1
:= u
i-1
– y.u
i
; v
i+1
:= v
i-1
– y.v
i
; i:=i+1;
end; t := v
i-1
;
if t > 0 then a
-1
:= t
elsea
-1
:= t + n;
end;
16
Ví dụ:
7
).Xem chi
1.
17
1.1.
I
g
i
u
i
v
i
y
0
7
1
0
1
3
0
1
2
2
1
1
-2
3
3
0
2
= -2 <
-1
:= t + n = -2 + 7 = 5.
7
Chú ý:-
(n)
mod n = 1
-
(mod p) = 1
4/. Khái niệm Lô-ga-rit rời rạc
,
“Logarit rời rạc”
x
(mod p).
18
1.2. HỆ MÃ HÓA
1.2.1. Khái niệm mã hóa dữ liệu
“che giấu”
- “Che” “mã hóa”
“mã hóa” “che” “ý nghĩa”
“khó”
- “Giấu”
1.2.1.1. Hệ mã hóa
P
C
K
E
D
ke
E, e
ke
: P C,
d
kd
D, d
kd
: C P sao cho d
kd
(e
ke
(T)) = T, T
ke
19
1.2.1.2. Mã hóa và giải mã
ke
ke
(T),
d
ke
kd
(e
ke
(T)).
1.2.2. Phân loại hệ mã hóa
).
- Mã hóa khóa đối xứng:
t
- Mã hóa khóa công khai
(k
e
k
d
“khó”
k
e
k
d
20
1.2.2.1. Hệ mã hóa khóa đối xứng
e
= k
d
).
hai
m[1][2].
Ví dụ:
-D
- :L
cao.
1/. Các đặc điểm của hệ mã hóa khóa đối xứng
-
khai.
-
.
Ng
2/. Phạm vi áp dụng hệ mã hóa đối xứng
-
-
.
21
1.2.2.2. Hệ mã hóa khóa công khai
-
1970.
-
(k
e
d
-
-
-
1/. Các đặc điểm của hệ mã khoá công khai
-
-
2/. Phạm vi áp dụng hệ mã hóa khoá công khai
- khai nh
22
1.2.3. Một số hệ mã hóa cụ thể
1.2.3.1. Hệ mã hóa RSA
1).(q 1)
n
K = {(n, p, q, a, b): n = p.q, p,
K
(x) = x
b
mod n
K
(y) = y
a
mod n
(x, y Z
n
Ví dụ:
1).(q 1) = 1*4 = 4
a = 7
y = e
K
(x)= x
b
mod n = 3
3
mod 10 = 7
x = d
K
(y) = y
a
mod n = 7
7
mod 10 = 3
1.2.3.2. Hệ mã hóa ElGamal
.
23
Bài toán logarithm rời rạc trong Z
p
:
g, hg Z
p
h
2 sao cho:
g
a
h (mod p)
= log
g
h
Sơ đồ hệ mã hóa Elgamal trong Z
p
:
Z
p
Cho g
, C =
x
.
a
. h g
a
(mod p).
Ta : K = {(p, g, a, h):h g
a
(mod p)}
g, h
C,
Z
p-1
e
K
(x, r) = (y
1
, y
2
).
1
= g
r
mod p
y
2
= x*h
r
1
, y
2
d
K
(y
1
, y
2
) = y
2
*(y
1
a
)
1
mod p
Ví dụ: , g
= 3
. h = g
a
mod p = 3
2
mod 7 = 2
1
Alice Bob, Alice
e
K
(x, k) = (y
1
, y
2
)
Trong
1
= g
k
mod p = 3
3
mod 7 = 6
y
2
= x. h
k
mod p = 3*2
3
mod 7 = 3
Khi Bob
1
, y
2
x = d
K
(y
1
, y
2
) = y
2
(y
1
a
)
-1
mod p = 3*(6
2
)
-1
mod 7 = 3
24
1.2.3.3. Mã hóa đồng cấu
1/. Khái niệm mã hóa đồng cấu:
.
.
E
k
,
)
E
k1
(m
1
)
E
k2
(m
2
) = E
k
(m
1
m
2
)
1
,k
2
2/. Hệ mã ElGamal có tính đồng cấu:
p
, C={(a,b)/a,b Z
p
p
Z
p
* .
k
(m) =(g
k
,h
k
m).
a
. [1, 2, 7]
3/. Một số loại sơ đồ mã hóa đồng cấu
0
:
Benaloh, Fisher, Benaloh,Trinstra, Crammer, Franklin.
25
1.3. KÝ SỐ
1.3.1.Khái niệm chữ ký số
1/. Giới thiệu về “Chữ ký số”
,
.
.
.
2/. Sơ đồ chữ ký số: P, A, K, S, V
P
A
K
S
V .
k
S, sig
k
: P A
Ver
k
V, Ver
k
: P * A P, y A:
k
(x)
Ver
k
(x, y) =
k
(x)