Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 24 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
24
Dung lượng
366,15 KB
Nội dung
1
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
Trịnh Thị Nhẫn
NGHIÊN CỨUCHỮ KÍ SỐVÀBÀITOÁNBỎPHIẾUTỪXA
Chuyên ngành: Khoa Học Máy Tính
Mã số: 60.48.01
Người hướng dẫn khoa học: TS Hồ Khánh Lâm
TÓM TẮT LUẬN VĂN THẠC SĨ
HÀ NỘI - 2012
2
MỞ ĐẦU
Để đáp ứng các nhu cầu trao đổi thông tin qua các thiết
bị điện tử nói chung và qua mạng Internet nói riêng. Mật mã
học ra đời và chỉ nghiêncứu các phương pháp để bảo đảm sự
an toàn thông tin trong truyền thông.
Mật mã học không chỉ dừng lại trong lĩnh vực bảo mật
thông tin mà còn phục vụ nhu cầu xác thực thông tin trên
mạng. Giải pháp được đưa ra cho vấn đề đó là “chữ kí điện tử”
và “chữ kí số”. Chữ kí số tương đương với chữ kí tay trên các
dữ liệu điện tử, nó không những xác thực được thông tin gửi từ
địa chỉ nào mà còn có thể làm người gửi thông tin không thể từ
chối thông tin do mình đã “kí” và gửi đi trong giao dịch điện
tử.
Khi công nghệ thông tin và các ngành điện tử phát triển
như vũ bão thì mọi hoạt động của xã hội có thể số hóa. Số hóa
các công việc không chỉ đảm bảo hiệu quả công việc mà còn an
toàn hơn rất nhiều so với những hoạt động do con người thực
hiện. Một hoạt động to lớn và quan trọng hàng đầu trong xã hội
là bỏphiếu cũng được điện tử hóa – chúng ta đang nói tới bỏ
phiếu từxa hay bỏphiếu điện tử.
Các vấn đề nói trên phần nào còn mới mẻ với nước ta,
xuất phát từ đó em đã lựa chọn việc “Nghiên cứuchữ kí sốvà
3
bài toánbỏphiếutừ xa” là chủ đề chính của luận văn tốt
nghiệp.
Luận văn của em bao gồm 3 chương:
Chương 1: Tổng quan về mật mã vàchữ kí số
Chương 2: Bỏphiếutừxa
Chương 3: Phân tích thiết kế và xây dựng ứng dụng mô hình
hóa cho bàitoánbỏphiếutừxa
Trong luận văn em sử dụng các phương pháp mã hóa cổ
điển, mã hóa đối xứng, mã hóa công khai… được thể hiện bằng
ngôn ngữ lập trình C# trên nền của asp.net để xây dựng mô
hình hóa và cơ sở dữ liệu em sử dụng SQL server 2005.
4
CHƯƠNG 1
TỔNG QUAN VỀ MẬT MÃ
VÀ CÁC PHƯƠNG PHÁP MÃ HÓA
Nội dung của chương bao gồm các phần sau:
Mật mã học và các yêu cầu bảo mật thông tin
Các phương pháp mã hóa
Khái niệm chữ kí số
Cơ sởtoán học của lý thuyết số
Mã hóa công khai Elgamal
Sơ đồ chữ kí số
Lược đồ chữ kí số Elgamal
1.1. Mật mã học và các yêu cầu bảo mật thông tin:
Mật mã học là một lĩnh vực liên quan với các kỹ thuật
ngôn ngữ vàtoán học để đảm bảo an toàn thông tin, cụ thể là
trong thông tin liên lạc. Về phương diện lịch sử, mật mã học
gắn liền với quá trình mã hóa. Điều này có nghĩa là nó gắn với
các cách thức để chuyển đổi thông tin từ dạng này sang dạng
khác nhưng ở đây là từ dạng thông thường có thể nhận thức
được thành dạng không thể nhận thức được, làm cho thông tin
trở thành dạng không thể đọc được nếu như không có các kiến
thức bí mật. Quá trình mã hóa được sử dụng chủ yếu để đảm
bảo tính bí mật của các thông tin quan trọng, chẳng hạn trong
công tác tình báo, quân sự hay ngoại giao cũng như các bí mật
về kinh tế, thương mại.
* Quá trình được mô tả như sau:
5
Hình 1.1. Quá trình mã hóa và giải mật mã
Như vậy mật mã là một lĩnh vực nghiêncứu về các kĩ
thuật toán học có liên quan tới lĩnh vực bảo mật thông tin như
bí mật, tính xác thực vàtoàn vẹn dữ liệu.
Để dảm bảo an toàn cho các thông tin mật mã học yêu cầu các
thuộc tính sau:
- Bí mật
- Toàn vẹn dữ liệu
- Xác thực
- Không chối bỏ được
- Chống lặp lại
1.2. Các phương pháp mã hóa:
1.2.1. Các phương pháp mã hóa cổ điển:
1.2.1.1. Phương pháp chuyển vị:
Phương pháp này là đổi chỗ lại các kí tự trong văn bản
rõ làm cho đối phương không thể hiểu được nội dung thông
báo
Trong phương pháp này ta sử dụng một số kĩ thuật sau:
6
- Đảo ngược toànbộ văn bản gốc.
- Mã hóa theo mẫu hình học.
1.2.1.2. Phương pháp thay thế:
Phương pháp này mã hóa bằng cách thay đổi một hay
một nhóm kí tự của văn bản gốc bằng một hay một nhóm các
kí tự khác để tạo thành văn bản mã. Bên nhận chỉ việc đảo
ngược trình tự thay thế trên văn bản mã là có được văn bản
gốc.
Một số kĩ thuật thay thế:
- Thay thế đơn giản.
- Thay thế nhiều hàng.
1.2.2. Mã khóa đối xứng:
Phương pháp mã khóa đối xứng là phương pháp sử
dụng cùng một khóa cho cả quá trình mã hóa và mật mã.
Một số thuật toán trong mã khóa đối xứng: DES, RC4.
1.2.3. Mã khóa bất đối xứng:
Mật mã hóa công khai là một dạng mật mã hóa cho
phép người sử dụng trao đổi các thông tin mật mà không cần
phải trao đổi các khóa chung bí mật trước đó. Mật mã hóa khóa
công khai được thiết kế sao cho khóa sử dụng trong quá trình
mã hóa khác biệt với khóa được sử dụng trong quá trình giải
mã. Hơn thế nữa, khóa sử dụng dùng để mã hóa và ngược lại,
tức là hai khóa này có quan hệ với nhau về mặt toán học nhưng
7
không thể suy diễn được ra nhau. Thuật toán này được gọi là
mã khóa công khai vì khóa dùng cho việc mã hóa được công
khai cho tất cả mọi người.
1.2.4. Hàm băm:
Hàm băm ( Hash function ) là hàm một chiều mà nếu
đưa một lượng dữ liệu bất kì qua hàm này dù cho ra một chuỗi
có độ dài cố định ở đầu ra.
Hai tính chất quan trọng của hàm là:
Tính một chiều.
Tính duy nhất.
1.3. Chữ kí số:
1.3.1. Khái niệm chữ kí số:
Chữ kýsố là thông tin đi kèm với dữ liệu nhằm xác
định người chủ của dữ liệu đó. Một chữkýsố hay một sơ đồ
chữ kýsố là phương pháp ký một bức điện lưu dưới dạng một
điện từ.
Chữ kýsố không thể copy hay giả mạo hay thay đổi
được
1.3.2. Cơ sởtoán học của lý thuyết số:
1.3.2.1. Ước số:
Số a được gọi là chia hết cho số b ≠ 0 hay b là ước số của a
nếu a = b * m trong đó a, b, m là các số nguyên. Ta kí hiệu b|a
8
1.3.2.2. Số nguyên tố vàsố nguyên tố cùng nhau:
Một số nguyên p > 1 gọi là số nguyên tố nếu nó chỉ có các ước
± 1 và ± p.
Định lí cơ bản của số học: Mọi số nguyên a > 1 đều có thể
được phân tích một cách duy nhất dưới dạng các lũy thừa của
các số nguyên tố khác nhau.
a = b
1
x1
+ b
2
x2
+ b
3
x3
+…+b
i
xi
Trong đó b
1
, b
2
, b
3,…,
b
i
là các số nguyên tố và các x
i
> 0
Hệ quả: Nếu a là một số nguyên tố và a|(b*c) thì ít nhất một
trong 2 số b, c phải chia hết cho a.
Ước chung lớn nhất của 2 sốtự nhiên a và b được kí hiệu là
gcd(a,b). Nếu c là ước chung lớn nhất của a và b thì c= gcd(a,b)
nếu:
- c là ước số của a và b
- Bất kì một ước số chung nào của a và b đều nhỏ hơn
hoặc bằng c.
Tất cả các số nguyên khác 0 đều là ước của số 0. Suy ra:
gcd(a,0) = a.
Khi 2 số nguyên tố a và b có ước chung lớn nhất là 1 hay
gcd(a,b) = 1 thì chúng được gọi là số nguyên tố cùng nhau.
1.3.2.3. Thuật toán Euclid, Euclid mở rộng và phi hàm
Euler:
1.3.2.4. Số học Modulo (phép tính đồng dư):
Cho mỗi số nguyên dương n và một số nguyên a bất kì nếu
chúng ta chia a cho n được thương là q và phần dư là r: a = q*n
+r với 0 =< r < n và q = [a/n]
9
Kí hiệu [x] là số nguyên lớn nhất nhỏ hơn hoặc bằng x.
Như vậy, nếu a Z và n Z
+
thì chúng ta định nghĩa a
mod n phần dư của phép chia a cho n. Với ví dụ trên ta có: r =
a mod n.
Hai số nguyên a và b được gọi là đồng dư với nhau theo modul
n nếu và chỉ nếu:
a mod n = b mod n và kí hiệu là a b mod (n)
chú ý: nếu a 0 mod (n) thì n|a
Từ việc tính đồng dư theo mod n ta tách được số nguyên
thành n lớp mỗi lớp chứa các số nguyên đồng dư với nhau theo
(mod n) và tập các lớp này được kí hiệu là: Z/nZ và chứa đúng
n phần tử thuộc đoạn [0, n-1].
1.3.2.5. Định lí Fermat và định lí Euler:
Định lí Fermat:
Nếu p là một số nguyên tố và a là một số nguyên thì a
p
a (mod p).
Nếu a không chia hết cho p tức là (a(mod p) ≠ 0) thì a
p-1
1 (mod p).
Định lí Euler: Nếu gcd(a,m) = 1 thì a
Ф(m)
= 1 mod m.
Trong trường hợp m là số nguyên tố thì Ф(m) = m-1 và ta
có định lí Fermal
1.3.2.6. Định lí Trung Quốc về phần dư:
Giả sử m
1
, m
2
,…,m
r
là các số nguyên dương nguyên tố cùng
nhau từng đôi một và cho a
1
, a
2
,…,a
r
là các số nguyên. Khi đó
hệ r đồng dư thức: x a
i
mod m
i
(1 ≤ i ≤ r) sẽ có một nghiệm
10
duy nhất theo modul M = m
1
, m
2
,…, m
r
được theo công thức
sau:
r
i
iii
MyMax
1
mod
Trong đó M
i
= M / m
i
và y
i
= M
i
-1
mod m
i
với 1 ≤ i ≤ r
1.3.2.7. Không gian rời rạc của phép lấy Logarit:
Ta kí hiệu F
p
là tập các lớp đồng dư theo Modul p hay F
p
=
Z/pZ = (0, 1, 2,…, p-1)
Z/pZ
*
là những tập gồm các số nguyên tố cùng nhau với p hay
tập các phần tử có nghịch đảo trong Z/pZ. Ta kí hiệu F
p
*
=
Z/pZ
*
Với p là số nguyên tố thì Z/pZ = Z/pZ
*
= F
p
= F
p
*
= (0, 1, 2,
…, p-1)
1.4. Mã hóa công khai Elgamal:
Mã hóa Elgamal có ứng dụng nhiều trong thực tế nhất là
trong vấn đế bảo mật vàchữ kí điện tử, đây là một loại mã hóa
công khai điển hình. Thuật toán mã hóa Elgamal bao gồm các
bước sau:
Bước 1: Phát sinh khóa
Bước 2: Lập mã
Bước 3: Giải mã
1.5. Sơ đồ chữ kí số:
Một sơ đồ chữ kí số gồm 2 thành phần: Thuật toán kí và
thuật toán xác minh.
[...]... sigk(x,y)=( r,s) ; trong đó : r = k mod p và s = (x - a*r) k-1 mod (p-1) 12 Với x, r Zp và s Zp-1 CHƯƠNG 2 BỎPHIẾUTỪXA Nội dung của chương bao gồm các phần sau: Vấn đề bỏphiếutừxa Quy trình bỏphiếutừxa Các kĩ thuật bỏphiếutừxa 2.1 Vấn đề bỏphiếutừ xa: 2.1.1 Khái niệm bỏphiếutừ xa: Bỏphiếutừxa là một cuộc bỏphiếu được thực hiện từxa trên mạng máy tính thông qua các phương... cấu Lá phiếu Hòm phiếu Cử tri Bảng niêm yết công khai Ban đăng kí Chữký mù Hình 2.1 Quy trình bỏphiếutừxa Lá phiếu Ban kiểm phiếuSơ đồ chia sẻ bí mật 15 2.2.1.Giai đoạn đăng ký: 2.2.2.Giai đoạn bỏ phiếu: 2.2.3.Giai đoạn kiểm tra: 2.2.4 Giai đoạn kiểm phiếu: 2.3 Các kĩ thuật bỏphiếutừ xa: 2.3.1 Kĩ thuật chữ kí mù: Theo phương thức bỏphiếu truyền thống, cử tri mang chứng minh thư và lá phiếu chưa... pháp bỏphiếu mới này các cử tri không thể nhìn thấy mặt nhau và các “lá phiếusố được chuyển từxa trên mạng tới các hòm phiếuBỏphiếutừxa cũng như tất cả các cuộc bỏphiếu khác phải đảm bảo các yêu cầu: “bí mật”, “toàn vẹn” và “xác thực” của lá phiếu; mỗi cử tri chỉ được bỏphiếu một lần, mọi người đều có thể kiểm tra tính đúng đắn của cuộc bỏ phiếu, cử tri không thể chỉ ra mình đã bỏ phiếu. .. nghiêncứu của em về luận văn Nghiên cứuchữ kí số và bàitoánbỏphiếutừxa Mặc dù đã cố gắng nghiêncứu nhưng do lĩnh vực khó và còn mới mẻ nên luận văn còn nhiều thiếu sót Em sẽ cố gắng tiếp tục nghiêncứu để hoàn thiện luận văn hơn trong thời gian tới Để có thể ứng dụng được trong thực tế Những đóng góp của luận văn: - Xây dựng một chương trình chữ kí số - Xây dựng ứng dụng cho quá trình bỏ. .. phải cung cấp một phần khóa bí mật Trang kiểm phiếu: Sau khi có khóa, tiến hành giải mã và niêm yết kết quả bỏphiếu Các Module chính: - Module form bỏphiếu - Module form kiểm phiếu 3.3 Đánh giá ứng dụng: Ứng dụng được chia làm 2 phần: Chữ kí số và Bỏphiếutừxa - Độ an toàn thông tin - Độ bảo mật thông tin - Trong khi xây dựng bàitoánbỏphiếutừxa đã đảm bảo các yêu cầu: bí mật, toàn vẹn, xác... quyền bỏ phiếu, sau đó đóng dấu xác thực lên lá phiếu Cử tri cất chứng minh thư, vào phòng bỏ phiếu, như vậy lá phiếu hoàn toàn không có thông tin định danh Quá trình bỏphiếu kiểu này được coi là “nặc danh”! Theo phương thức bỏphiếu “điện tử”, mỗi lá phiếu phải có thông tin định danh Nó có thể là một con số x nào đó và phải khác nhau Trên mỗi lá phiếu phải có chữký trên số định danh x, thì lá phiếu. .. đảm an toàn thông tin: chữ kí mù, mã hóa đồng cấu, chia sẽ bí mật - Hệ thống phân phối khóa tin cậy sẵn sàng cung cấp khóa cho công việc mã hóa hay kí số 2.2 Quy trình bỏphiếutừ xa: Hiện nay, người ta đã nghiêncứuvà thử nghiệm một số quy trình bỏphiếutừ xa, mỗi qui trình có ưu nhược điểm riêng, trong chương này chúng ta chỉ nghiêncứusơ đồ bỏphiếu như sau: 14 Trộn phiếu Chứng minh không tiết... bán phiếu bầu 2.1.2 Tổ chức hệ thống bỏphiếutừ xa: Các thành phần trong ban tổ chức bỏ phiếu: 13 - Ban điều hành (ĐH) - Ban Đăng kí (ĐK) - Ban Kiểm tra (KT) - Ban Kiểm phiếu (KP) Các thành phần kỹ thuật trong hệ thống bỏ phiếu: - Hệ thống máy tính và các phần mềm phục vụ quy trình bỏphiếutừxa - Người dùng thực kiểm soát Server đảm bảo yêu cầu bảo mật vàtoàn vẹn của kết quả bỏphiếu - Một số. .. giải mã bản tin và kiểm tra chữ kí số 20 3.1.2 Mô hình cài đặt bỏphiếutừ xa: Xây dựng ứng dụng cho quá trình bỏphiếu điện tử - mô hình bỏphiếu có/không cho một công ty Quy trình thực hiện như sau: - Xây dựng cơ sở dữ liệu cho quá trình bỏphiếu - Cung cấp thẻ cử tri cho các nhân viên - Các cử tri sử dụng thẻ cử tri được xác minh và tham gia bỏphiếu - Ban kiểm phiếu KP thực hiện kiểm phiếu mà không... của luận văn: - Xây dựng một chương trình chữ kí số - Xây dựng ứng dụng cho quá trình bỏphiếutừxa – mô hình bỏphiếutừxa có/không cho một công ty Kiến nghị về những nghiêncứu tiếp theo: - Xây dựng mô hình ứng dụng nhỏ minh họa nhiều hơn 1 sơ đồ chữ kí sốvà mô hình một quá trình bỏphiếutừxa - Nghiêncứu phát triển chương trình trên Internet để mở rộng liên kết Em xin gửi lời cảm ơn chân . kĩ thuật bỏ phiếu từ xa
2.1. Vấn đề bỏ phiếu từ xa:
2.1.1. Khái niệm bỏ phiếu từ xa:
Bỏ phiếu từ xa là một cuộc bỏ phiếu được thực hiện
từ xa trên. quan về mật mã và chữ kí số
Chương 2: Bỏ phiếu từ xa
Chương 3: Phân tích thiết kế và xây dựng ứng dụng mô hình
hóa cho bài toán bỏ phiếu từ xa
Trong luận