Nghiên cứu chữ ký số và bài toán bỏ phiếu từ xa

24 467 2
Nghiên cứu chữ ký số và bài toán bỏ phiếu từ xa

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

1 HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG Trịnh Thị Nhẫn NGHIÊN CỨU CHỮSỐ BÀI TOÁN BỎ PHIẾU TỪ 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 qua mạng Internet nói riêng. Mật mã học ra đời chỉ nghiên cứ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ữ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í” gửi đi trong giao dịch điện tử. Khi công nghệ thông tin các ngành điện tử phát triển như vũ bão thì mọi hoạt động của 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 quan trọng hàng đầu trong 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ứu chữsố 3 bài toán bỏ phiếu từ 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ã chữsố Chương 2: Bỏ phiếu từ xa Chương 3: Phân tích thiết kế 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 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 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 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ữsố  Cơ sở toán học của lý thuyết số  Mã hóa công khai Elgamal  đồ chữsố  Lược đồ chữsố Elgamal 1.1. Mật mã học 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ữ 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 giải mật mã Như vậy mật mã là một lĩnh vực nghiên cứ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 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àn bộ 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 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 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ữ 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ữ số hay một đồ chữ số là phương pháp một bức điện lưu dưới dạng một điện từ. Chữ 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ố 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 ± 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ố các x i > 0 Hệ quả: Nếu a là một số nguyên tố 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 b được kí hiệu là gcd(a,b). Nếu c là ước chung lớn nhất của a b thì c= gcd(a,b) nếu: - c là ước số của a b - Bất kì một ước số chung nào của a 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 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 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 một số nguyên a bất kì nếu chúng ta chia a cho n được thương là q phần dư là r: a = q*n +r với 0 =< r < n 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 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 b được gọi là đồng dư với nhau theo modul n nếu chỉ nếu: a mod n = b mod n 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) tập các lớp này được kí hiệu là: Z/nZ chứa đúng n phần tử thuộc đoạn [0, n-1]. 1.3.2.5. Định lí Fermat định lí Euler:  Định lí Fermat: Nếu p là một số nguyên tố 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 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 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 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 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. đồ chữ kí số: Một đồ chữsố gồm 2 thành phần: Thuật toán thuật toán xác minh. [...]... sigk(x,y)=( r,s) ; trong đó : r = k mod p s = (x - a*r) k-1 mod (p-1) 12 Với x, r  Zp s  Zp-1 CHƯƠNG 2 BỎ PHIẾU TỪ XA Nội dung của chương bao gồm các phần sau:  Vấn đề bỏ phiếu từ xa  Quy trình bỏ phiếu từ xa  Các 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 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ữ mù Hình 2.1 Quy trình bỏ phiếu từ xaphiếu Ban kiểm phiếu đồ 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ếu từ 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ư 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 các “lá phiếu số được chuyển từ xa trên mạng tới các hòm phiếu Bỏ phiếu từ 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” “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ên cứu của em về luận văn Nghiên cứu chữsốbài toán bỏ phiếu từ xa Mặc dù đã cố gắng nghiên cứu nhưng do lĩnh vực khó 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ên cứ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ã 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ốBỏ phiếu từ xa - Độ an toàn thông tin - Độ bảo mật thông tin - Trong khi xây dựng bài toán bỏ phiếu từ 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 đó phải khác nhau Trên mỗi lá phiếu phải có chữ 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ếu từ xa: Hiện nay, người ta đã nghiên cứu thử nghiệm một số quy trình bỏ phiếu từ xa, mỗi qui trình có ưu nhược điểm riêng, trong chương này chúng ta chỉ nghiên cứu đồ 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ếu từ 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 các phần mềm phục vụ quy trình bỏ phiếu từ xa - Người dùng thực kiểm soát Server đảm bảo yêu cầu bảo mật toàn vẹn của kết quả bỏ phiếu - Một số. .. giải mã bản tin kiểm tra chữ kí số 20 3.1.2 Mô hình cài đặt bỏ phiếu từ 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 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ếu từ xa – mô hình bỏ phiếu từ xa có/không cho một công ty  Kiến nghị về những nghiên cứu tiếp theo: - Xây dựng mô hình ứng dụng nhỏ minh họa nhiều hơn 1 đồ chữsố mô hình một quá trình bỏ phiếu từ xa - Nghiên cứ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

Ngày đăng: 14/02/2014, 08:42

Hình ảnh liên quan

1.2. Các phương pháp mã hóa: - Nghiên cứu chữ ký số và bài toán bỏ phiếu từ xa

1.2..

Các phương pháp mã hóa: Xem tại trang 5 của tài liệu.
Hình 1.1. Q trình mã hóa và giải mật mã - Nghiên cứu chữ ký số và bài toán bỏ phiếu từ xa

Hình 1.1..

Q trình mã hóa và giải mật mã Xem tại trang 5 của tài liệu.
Hình 2.1. Quy trình bỏ phiếu từ xa. - Nghiên cứu chữ ký số và bài toán bỏ phiếu từ xa

Hình 2.1..

Quy trình bỏ phiếu từ xa Xem tại trang 14 của tài liệu.

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan