Được sự đồng ý của thầy hướng dẫn và nhận thấy tính thiết thực củavan dé, tôi chon dé tài: “Nghién cứu chữ ký số mù trong ứng dụng bau cứ điện tử”.. Một s6 khái niệm cơ bản - Trình bày c
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIÊN THÔNG
LÊ VĂN THẠO
NGHIÊN CỨU CHỮ KÝ SÓMÙ_
TRONG UNG DỤNG BAU CỬ ĐIỆN TỬ
CHUYÊN NGÀNH: HỆ THÓNG THÔNG TIN
MÃ SO: 8.48.01.04
TOM TAT LUAN VAN THAC SI
Trang 2Người hướng dẫn khoa học: TS Dang Minh Tuan
Phản biện 1: PGS.TS Trần Đình Quế
Phản biện 2: PGS.TS Đỗ Trung Tuấn
Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Hoc
viện Công nghệ Bưu chính Viên thông
Vào lúc: 9 giờ 45’ ngày 27 tháng 7 năm 2019
Có thé tìm hiểu luận văn tai:
- Thư viện của Học viện Công nghệ Bưu chính Viên thông
Trang 3MỤC LUC
AY CO 3).\ 3
Chương 1 MOT SO KHÁI NIỆM CO BAN . -s° 4
1.1 Các khái MIEM CO’ SỞ d << 5G 5 55 9 9 59 59969899658 4
1.1.1 Một số khái niệm trong số học 2 - 2 2 s+s se: 4
1.1.2 Một số khái niệm trong đại TỶ" 4
1.2 Lý thuyết cơ bản về hệ mã hóa -5 2 se ses<<sesses2 5
1.2.1 Khái niệm mã hóa dit liệu -2- 2 2 2+5z+x+zx+cxeẻ 5 1.2.2 Phân loại hệ mã hóa - - ++++++++++++++++++++>+>z+ 6
1.2.3 Một số hệ mã hóa cụ thỂ 2- 2-52 5+5£+£zEczxerxerxered 7
ch (C0) 11 8Chương 2 CHU KY SO, CHỮ KÝ MÙ -5- << <cs 9
2.1 Chit KY ha 9
2.1.1 Khái niệm chữ ký SỐ - 2 52 £E+E£EeEeErEererrees 9
2.1.2 Cách tạo chữ ký Số - 5c St c2 E212 x1 xe rreeg 9
2.1.3 Sơ đồ chữ ký 6 voices essesescsscsesesesesssstssssescssesesseaeees 102.1.4 Phân loại chữ ký sỐ ¿2 + ++c++z+E+Ezxrxerxerxee 10
2.1.5 So sánh chữ ký thông thường và chữ ký số II
2.1.6 Một số van đề với chữ ký số và cách giải quyết 11
2.1.7 Tổng quan về hàm baM 0 eeeeeeeeseeseseeeseseseeseeestesesseees II
2.1.8 Phân loại tan công chữ ký sỐ ¿5-52 5 +czxse£ 13
2.1.9 Các dạng phá vỡ lược đồ chữ ký số -+: 132.1.10 Ưu điểm của chữ ký sỐ -2- 25-52 cx+£zEerszrered 13
2.2 Chữ ký Imù s- << s©ssssEssEseEseEseEseEsexseseeserserserssrse 13
2.2.1 Khái niệm chữ ký mù - 2- 2 sc++Ez+EzEcrEerxerxee 13
2.2.2 Ung dụng chữ ký mù trong bau cử điện tử - 13
2.2.3 Chữ ký mù Elgamal - - «+6 + ksekksseeeree 15
2.2.4 Phương án dé XUat oo ceeseesesesessesesessesseseseseeseeseees 162.2.5 Đánh giá tính đúng đắn và độ an toàn - - 16
Trang 42.2.6 Một số kỹ thuật hỗ trợ hệ thống bau cử điện tử 16
2.3 Kết chư0ng so 5< s£ se 9s EsEsESsEsEEsEseEsessssersessre 17Chương 3 UNG DUNG TRONG BAU CU ĐIỆN TỬ 18
3.1 Tổng quan về bầu cử điện tử: - << s<scseesesses 18
3.1.1 Giới thiệu về bầu Cử ¿+ + EsEEEEEEEEErerererererereee 183.1.2 Khái niệm bau cử điện tử -¿- - + x+xeEeEererxsesed 19
3.1.3 Các giai đoạn bau cử điện tử - ¿-cecs+ccrxersrxee 20
3.1.4 Thực trạng bầu cử điện tử - -cccxstcxeEvrkcxekerererees 21
3.2 Xây dựng hệ thống bầu cử điện tử . -5 °-s 21
3.2.1 Phát biểu bài toán - ¿+ 5c Ss+Sx+EkcESE2ErErrkrrkerkrred 21
3.2.2 Mô hình ngữ cảnh hệ thống -2- 2 ¿552 +sz>xsx2 21
3.2.3 Lựa chon công nghỆ << 111 rrey 21
3.2.4 Ứng dụng cơ chế chữ ký mù Elgamal trong bầu cử điện tử22
3.2.5 Triển khai mô phỏng hệ thống bau cử điện tử 22
3.2.6 Đánh giá chương trình mô phỏng ‹ -s-«+<++ 26
3.3 Ket s0 1n 26
KET LUẬN - 5-5 <2 92s E32 ESE29 315858 535835 303505825gs2e 27
Trang 5MỞ ĐẦU
Trong thực tiễn của đời sống xã hội thì việc bỏ phiếu để bầu cử các
chức vụ, chức danh hay thăm dò sự tín nhiệm của lãnh đạo các cấp, các
ngành thông qua việc bỏ phiếu kín là hoạt động thường xuyên, liên tục
Nhằm tăng hiệu quả, khách quan va tính chính xác, giảm chi phí trongviệc bỏ phiếu, tác giả muốn nghiên cứu các kỹ thuật đảm bảo an toàn cho
việc thực hiện bầu cử điện tử
Được sự đồng ý của thầy hướng dẫn và nhận thấy tính thiết thực củavan dé, tôi chon dé tài: “Nghién cứu chữ ký số mù trong ứng dụng bau
cứ điện tử”.
Luận văn gồm 3 chương, có phần mở đầu, phần kết luận, phần mụclục, phần tài liệu tham khảo Các nội dung cơ bản của luận văn được trìnhbày theo cấu trúc như sau:
Chương 1 Một s6 khái niệm cơ bản
- Trình bày các khái niệm cơ bản về toán học và lý thuyết cơ bản về
mật mã học: mã hóa dữ liệu, hệ mật khóa công khai RSA, Elgamal, đường
cong elliptic.
Chương 2 Chữ kỷ số, chữ kỷ mù
- Nội dung chính của chương này là trình bày về phương pháp, kỹthuật tạo chữ ký số, chữ ký mù Đánh giá và so sánh với những loại khác,
nghiên cứu nội dung của một thuật toán chữ ký mù trên cơ sở thuật toán
của Elgamal qua đó qua đó phát triển giao thức bầu cử điện tử dựa trên
cơ sở thuật toán ký mù Elgamal.
Chương 3 Ung dụng trong bầu cử điện tử
- Trinh bảy các quy trình, cau trúc và thực trạng bau cử điện tử Thửnghiệm ứng dụng chữ ký số mù trên cơ sở thuật toán ký mù Elgamal trong
bầu cử điện tử
Trang 6Chươ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ổ
- Khái niệm: Số nguyên t6 là số tự nhiên chỉ chia hết cho 1 và chính nó
1.1.1.2 Nguyên tô cùng nhau
- Khái niệm: Trong toán học, các số nguyên z và b được gọi là nguyên
tố cùng nhau nếu chúng có ước số chung lớn nhất là 1
1.1.1.3 Uóc số - Bội số
- Cho hai số nguyên a và b, b # 0 Nếu có một số nguyên g sao cho a
= b*q, ta nói rang a chia hết cho b, kí hiệu bla Ta nói b là ước của a, và
Nhóm là bộ đôi (G, *), trong đó G là tập #ZZvà + là một phép toán hai
ngôi trong G thỏa mãn ba tiên đề sau:
1.1.2.2 Nhóm hữu han
- Khái niệm: Nhóm (G, +) hữu hạn nếu IG! là hữu hạn Số các phan
tử của nhóm G được gọi là cấp của nhóm
1.1.2.3 Nhóm chu ky (Cyclic)
- Khái niệm nhóm Cyclic
Nhóm (G, *) được gọi là nhóm Cyelic nếu nó được sinh ra bởi mộttrong các phần tử của nó
- Cấp của nhóm Cyclic
Trang 7- Cấp của một phần tử trong nhóm Cyclic
1.1.2.4 Nhóm (Zp, phép nhân mod n)
- Khái niệm tập thặng dư thu gọn theo modulo
Kí hiệu Z,={0, 1, 2, , n-1} là tập các số nguyên không âm < n Z„
và phép cộng (+) lập thành nhóm Cyclic có phan tử sinh là 1, phần tử
trung lập e=0 (Z,, +) gọi là nhóm cộng, đó là nhóm hữu hạn có cấp H
- Một số kết qua đã được chứng minh
1.2 Lý thuyết cơ bản về hệ mã hóa
1.2.1 Khai niệm mã hóa dữ liệu
Người gửi G muốn gửi bản tin T cho người nhận N Dé bảo đảm bi
mật, G mã hoá bản tin bằng khóa lập mã ke, thu được bản mã exe (T), sau
đó gửi cho N Tin tặc có thé trộm bản mã exe (7), nhưng cũng “khó” hiểuđược ban tin gốc 7 nếu không có khoá giải mã kd
Người N nhận được bản mã, họ dùng khoá giải mã kd, dé giải mã exe
(T) sẽ nhận được bản tin gốc T = dia (€ke (T))
Trang 8Hình 1 1 Sơ đồ khối một hệ truyền tin mật
1.2.1.3 Những yêu cau đổi với hệ mật mã
Cung cấp một mức cao về tính bảo mật, tính toàn vẹn, chống chối bỏ
và tính xác thực.
1.2.2 Phán loại hệ mã hóa
Hiện nay có hai loại mã hóa chính: Mã hóa khóa đối xứng và Mã hóa
khoá công khai.
1.2.2.1 Mã hóa khóa đối xứng
Ma hoá khóa đối xứng: là hệ mã hoá tại đó khoá mã hoá có thé "dé"
tính toán ra được từ khoá giải mã và ngược lại.
—¬ Hệ thống khóa |
Dữ liệu gốc Zˆ Dữ liêu mã hóa Dữ liệu gốc
(Bản rõ - Plaintex) |——>| Mã hóa | (Bản mã ~ Ciphertext) —> Giải mã (Bản rõ — Plaintext)
+ Phương pháp mã hoá đối xứng đòi hỏi người mã hoá và người giải
mã phải cùng chung một khoá Khoá phải được giữ bí mật tuyệt đối "Dễdàng" xác định một khoá nếu biết khoá kia và ngược lại
Trang 91.2.2.2 Mã hóa khóa công khai
- Mã hóa khóa công khai: là hệ mã hóa có khóa lập mã khác khóa
giải mã (ke # kd), biết được khóa này cũng “khó” tính được khóa kia Vì
thế khóa giải mã cần phải được giữ bí mật, khóa lập mã được công khai
| Khóa mã hóa —] Hệ thông khóa —| Khóa giải mã
] | ]
Dữ liệu gốc /ˆ Đữ liệu mã hóa Dữ liệu gốc
(Bản rõ — Plaintext) |—>| Mã hóa (Bản mã - Ciphetex) [>| Giải mã (Bản rõ — Plaintext)
Hình 1 3 Mã hóa khóa công khai
Ưu nhược điểm của hệ mã khóa công khai
- Ưu điểm:
+ Chỉ có khóa riêng thì cần được giữ bí mật, tuy nhiên việc xác nhậncác khóa công khai cần được đảm bảo
- Nhược điểm:
+ Tốc độ cho các phương thức mã hóa công khai chậm hơn so với các
mô hình khóa đối xứng
Một số hệ mã hóa khóa công khai phô biến như: RSA, Rabin, Elgamal,
Ta thấy rang y(n) = (p — 1).(q— 1)
Sơ dé của hệ mã hóa RSA
Cho n = p.g trong đó p và q là các số nguyên tô Đặt P = C = Z, và
Trang 101.2.3.2 Hệ mã hóa ElGamal
Hệ mã hóa ElGamal được T.ElGamal đề xuất năm 1985, dua vào độ
phức tạp của bai toán tính logarit rời rac, và sau đó đã nhanh chóng được
sử dụng rộng rãi không những trong vấn đề bảo mật truyền tin mà còntrong các vấn đề xác nhận và chữ ky điện tử
Bài toán logarithm rời rac trong Zp:
Đặc trưng của bài toán: 7 = (p, g, h) trong đó p là số nguyên tố, g EZ,
là phan tử nguyên thuỷ (hay phan tử sinh), h€Z7
Mục tiêu: Hãy tìm một số nguyên duy nhất a, 0 <a <p —2 sao cho:
g° = h (mod p)
Ta sẽ xác định số nguyên a = log,h Bởi vậy sé có nhiều bản mã được
mã hóa từ cùng một bản rõ.
Sơ đồ hệ mã hóa Elgamal trong Z,:
Cho p là số nguyên tổ sao cho bài toán logarithm rời rac trong Z, là
khó giải.
Cho g €Zÿ là phan tử nguyên thuỷ Giả sử P = Z7, C = Z, xZÿ
Chọn khóa bí mật a €Z;, Tính khóa công khai h = g* (mod p).
Ta định nghĩa tập khóa: K = {(p, g, a, h): h = g” (mod p)}
Với bản rõ x € Pvà ban mã y € C ta xác định:
+ Lập mã: Chọn ngẫu nhiên bí mật r €Z „;, bản mã là
y = x(x, r) = (Yr, Y2).
y2 = x*h' mod p với yi, ya€Zn ta xác định:
+ Giải ma: đk(y, y2) = y2*(yi") ~! mod p
1.3 Két chuong
Trong chương nội dung dau tiên của luận văn, luận văn đã trình bay
một số khái niệm cơ bản về toán học và lý thuyết cơ bản về mã hóa dữliệu Qua đó nắm rõ được các khái niệm mã hóa dữ liệu, phân loại hệ mãhóa và một số hệ mã hóa cụ thể
Trang 11Chương 2 CHỮ KY SO, CHỮ KÝ MU
2.1 Chữ ký Số
Năm 1976, Diffie va Hellman trong bài báo “New Directions in
Cryptography” [10] đã đề cập đến khái niệm chữ ky số, tuy nhiên hai tácgiả này chưa đưa ra được lược đồ ký số thực tế nào Phải đến năm 1978,
trong công bố “A Method for Obtaining Digital Signatures and
Public-Key Crypfosysfems ” [8] R Rivest, A Shamir, và L Adleman mới đưa ra
lược đồ ky số dựa trên bài toán khó là phân tích ra thừa số nguyên tố đượcgọi là RSA và được sử dụng cho đến ngày nay
Ở Việt Nam, Luật Giáo dịch Điện tử đã có hiệu lực từ năm 2005, chữ
ký số có tính pháp lý như chữ ký tay và con dấu truyền thống Chữ ký số
và chứng thư số đã được đưa vào các văn bản pháp lý cao nhất từ luật chođến các nghị định, thông tư, quyết định Chữ ký số đã được nhiều công ty
như VDC, Viettel, FPT, BKAV cung cấp dịch vụ cho các tổ chức cánhân trong việc kê khai thuế qua mạng, khai báo hải quan, đấu thầu điệntử Tuy nhiên các dịch vụ này chủ yếu vân xoay quanh mô hình chữ ký
số đơn Các loại chữ ký số khác hiện chưa được đơn vi nao cung cấp ngoại
trừ BKAV có khả năng cung cấp mô hình ký nháy
2.1.1 Khái niệm chữ ký số
Chữ ký số là mô hình sử dụng các kỹ thuật mật mã để gắn với mỗingười sử dụng một cặp khóa công khai - bí mật và qua đó có thể ký cácvăn bản điện tử cũng như trao đổi các thông tin mật Khóa công khai
thường được phân phối thông qua chứng thực khóa công khai Quá trình
sử dụng chữ ký số bao gồm 2 quá trình: tạo chữ ký và kiểm tra chữ ký
2.1.2 Cách tạo chữ ký số
Quá trình sử dụng chữ ký số bao gồm 2 quá trình: tạo và kiểm tra
chữ ký.
Trang 12'trình tạo chữ ky số si : 5 14 trình kiểm tra chữ ký số
Sơ đồ chữ ký là bộ năm (P, A, K, S, V), trong đó:
P là tập hữu hạn các văn bản có thê
A là tập hữu hạn các chữ ký có thé
K là tập hữu hạn các khóa có thể
S là tập các thuật toán ky
V là tập các thuật toán kiểm thử
Với mỗi khóa k eK, có thuật toán ky Siex € S, Siex: P >A, có thuật
toán kiểm tra chữ ký Ver, eV,Ver,: P xA ->/đúng, sai }, thỏa mãn điều
kiện sau với mọi x EP, y EA: Ver; (x, y) =đúng ©y =Sig x (x).
Người ta thường sử dụng hệ mã hóa khóa công khai dé lập sơ đồ chữ
ký số Khóa bí mật dùng làm khóa ký, khóa công khai dùng làm khóakiểm tra chữ ký
2.1.4 Phân loại chữ ký số
Có nhiều loại chữ ký số tùy theo cách phân loại, sau đây xin giới thiệu
một số cách:
2.1.4.1 Phân loại chữ ký theo đặc trưng kiểm tra chữ ky
- Chữ ký khôi phục thông điệp
- Chữ ký không thể khôi phục được thông điệp
Trang 13- Chữ ký bội (Multy Signature)
- Chữ ký “mù nhóm” (Blind Group Signature)
- Chữ ký “mù bội” (Blind Multy Signature)
2.1.5 So sánh chữ ký thông thường và chữ ký số
- Thứ nhất, chữ ký thông thường là một phan vật lý của tài liệu được
ký Tuy nhiên, chữ ký số không gắn vào thông điệp được ký như chữ ký
thông thường, vì thế thuật toán ký phải liên kết giữa chữ ký và thông điệp
được ký.
- Thứ hai, thâm định chữ ký thông thường thực hiện bằng cách so sánh
nó với chữ ký khác (chữ ký tin cậy) Trái lại, thâm định chữ ký sỐ dùngthuật toán kiểm tra công khai Do đó, bat kỳ ai cũng có thé thâm định Sử
dụng sơ đồ chữ ký an toàn sẽ ngăn chặn được khả năng giả mạo
2.1.6 Một số van đề với chữ ký số và cách giải quyết
- Ký số thực hiện trên từng bit tài liệu, nên độ dài cua chữ ký số ít nhất
cũng bằng độ dài của tài liệu Một số chữ ký trên bản tin có kích thướcgấp đôi bản tin gốc Ví dụ khi dùng sơ đồ chữ ký số DSS dé ký vào bản
tin có kích thước 160 bit, thì chữ ký số này sẽ có kích thước 320 bit Trong
khi đó trên thực tế, ta cần phải ký vào các bản tin có kích thước rất lớn,
ví dụ vài chục MegaByte (tương ứng hàng ngàn trang tin trên giấy) Nhưvậy phải tốn nhiều bộ nhớ dé lưu trữ “chữ ky”, mặt khác tốn nhiều thờigian để truyền “chữ ký” trên mạng
2.1.7 Tổng quan về hàm băm
Hàm băm là một giải thuật nhăm sinh ra các giá trị băm tương ứng vớimỗi khối dữ liệu Giá trị băm đóng vai trò gần như một khóa để phân biệtcác khối dữ liệu
Trang 14iL bits
Message or data block M (variable length)
Hinh 2 2 Minh hoa ham bam
- Giá trị đầu vào là dir liệu có độ dài bat kỳ
- Giá trị đầu ra là đữ liệu có độ dài có định
2.1.7.1 Đặc tính của hàm băm
Hàm băm h là hàm một chiều (one - way hash) với các đặc tính sau:
- Với thông điệp đầu vào x thu được ban băm z = h(x) là duy nhất
- Nếu dit liệu trong thông điệp x thay đổi hay bị xóa dé thành thông
điệp x’ thì h(x’) #h(x) Cho du chỉ có một sự thay đối nhỏ hay chỉ là xóa
đi một bit đữ liệu của thông điệp thì giá trị băm cũng vẫn thay đồi
2.1.7.2 Một số tính chất cơ bản của hàm băm
- Có thé áp dụng với thông báo dau vào có độ dai bat kỳ
- Tạo ra giá tri băm y = h(x) có độ dai cô định
2.1.7.3 Vai trò của hàm băm
- Bảo vệ tính toàn vẹn và phát hiện xâm nhập thông điệp được gửi qua
mạng bằng cách kiểm tra giá trị băm của thông điệp trước và sau khi gửinham phát hiện những thay đổi cho dù là nhỏ nhất
Trang 152.1.8 Phân loại tắn công chữ ký số
Shafi Goldwasser trong [12] mô tả các loại hình tan công chữ ký số
Ký hiệu A là người bị tan công, có hai dang tan công chữ ký số:
+ Tấn công vào khóa: Người tan công chỉ biết khóa công khai
+ Tan công vào văn bản: Người tan công có thé phân tích một số chữ
ký tương ứng chữ ký số đã biết hoặc được lựa chọn
2.1.9 Các dạng phá vỡ lược đồ chữ ký số
Shafi Goldwasser trong [12] mô tả đầy đủ các dạng phá vỡ chữ ký số
Khi nói rằng người tan công phá vỡ lược đồ ký số của A như sau:
(1) Phá vỡ hoàn toàn:
(2) Giả mạo tổng quát:
(3) Giả mạo có lựa chọn:
(4) Tôn tại giả mạo:
Ký mù là loại ký có nhiều ứng dụng trong thực tiễn Ở đó người ký sẽ
ký vào văn bản đã mã hóa do đó sẽ không biết được nội dung ký Mô hìnhnày có nhiều ứng dụng trong việc triển khai tiền ảo các cơ chế thanh toán
online cũng như offline Ngoài ra ký mù cũng là cơ chế căn bản trong việcbầu cử điện tử, khi cơ quan kiểm phiếu cần chứng thực tính hợp lệ củaphiếu bầu nhưng lại không biết nội dung trong phiếu bau của từng cử chỉ
2.2.2 Ứng dụng chữ ký mù trong bau cử điện tử
* Giai đoạn đăng ký: