1. Trang chủ
  2. » Luận Văn - Báo Cáo

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

24 471 3
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Nghiên cứu chữ ký số và bài toán bỏ phiếu từ xa
Tác giả Trịnh Thị Nhẫn
Người hướng dẫn TS Hồ Khánh Lâm
Trường học Học viện Công nghệ Bưu chính Viễn thông
Chuyên ngành Khoa Học Máy Tính
Thể loại Tóm tắt luận văn thạc sĩ
Năm xuất bản 2012
Thành phố Hà Nội
Định dạng
Số trang 24
Dung lượng 366,15 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

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

Trang 1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

TÓM TẮT LUẬN VĂN THẠC SĨ

HÀ NỘI - 2012

Trang 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ê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ữ 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ứu chữ kí số và

Trang 3

bài toán bỏ phiếu từ xa” là chủ đề chính của luận văn tốt

Trang 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:

Trang 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ê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ư

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:

Trang 6

- Đảo ngược toàn bộ văn bản gốc

- Mã hóa theo mẫu hình học

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

Trang 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à:

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

Trang 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

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]

Trang 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 =

1.3.2.6 Định lí Trung Quốc về phần dư:

Giả sử m1, m2,…,mr là các số nguyên dương nguyên tố cùng nhau từng đôi một và cho a1, a2,…,ar là các số nguyên Khi đó

hệ r đồng dư thức: x  ai mod mi (1 ≤ i ≤ r) sẽ có một nghiệm

Trang 10

duy nhất theo modul M = m1, m2,…, mr được theo công thức sau:

a x

1

mod

Trong đó Mi = M / mi và yi = Mi-1 mod mi 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 Fp là tập các lớp đồng dư theo Modul p hay Fp = 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 Fp* = Z/pZ*

Với p là số nguyên tố thì Z/pZ = Z/pZ* = Fp = Fp*= (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

Trang 11

Ta định nghĩa: Một sơ đồ chữ kí số là một bộ 5 (P, A,K,S, V) thỏa mãn các điều kiện sau:

- P là tập hữu hạn các bức điện

- A là tập hữu hạn các chữ kí

- K là không gian khóa hay tập hữu hạn các khóa

Với mỗi k  K tồn tại một thuật toán kí sigk  S và là một thuật toán xác minh verk  V Mỗi sigk : P  A và verk : P x A

 {true, false} là những hàm sao cho mỗi bức điện x  P và mỗi chữ kí y  A thỏa mãn phương trình sau đây

Với mỗi k  K hàm sigk và verk là các hàm thời gian đa thức Verk sẽ là hàm công khai sigk là một

1.6 Lược đồ chữ kí số Elgamal:

Cho p là một số nguyên tố lớn sao cho bài toán logic rời rạc trên Zp là khó giải và giả sử   Zn là phần tử nguyên thủy

P = Zp* và A = Zp* x Zp-1 và định nghĩa: K={(p, α, a, β): β≡ αa(mod p)}

Trong đó p, ,  là công khai và a là bí mật

Với K = (p, , a, ) và

một bộ số ngẫu nhiên (mật) k  Zp-1 định nghĩa:

sigk(x,y)=( r,s) ; trong đó : r = k mod p và

s = (x - a*r) k-1 mod (p-1).

Nếu y = sig(x) Nếu y ≠ sig(x)

Trang 12

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 tiện “điện tử” như máy tính cá nhân,điện thoại di động…với phương 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ế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” 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 cho ai để tránh cơ hội 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:

Trang 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ế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 và toàn vẹn của kết quả bỏ phiếu

- Một số kĩ thuật bảo đả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 và 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 sơ đồ bỏ phiếu như sau:

Trang 14

Hình 2.1 Quy trình bỏ phiếu từ xa

Chứng minh không tiết lộ

thông tin

Mã hóa đồng cấu

Chữ ký mù

Lá phiếu

Trang 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ư và lá phiếu chưa có nội dung gì đến bàn đóng dấu, ở đó người ta kiểm tra giấy tờ để xác minh 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ới có giá trị để bầu cử

Cử tri biến đổi x thành y trước khi đưa cho Ban KP kí xác nhận Ban KP ký vào y, mà không biết đó là số định danh x đã

bị che dấu.Họ trao chữ ký trên y là z cho CT

Cử tri “xóa mù” trên z sẽ được chữ ký của Ban KP trên số định danh x, như vậy CT có quyền bầu cử

Trang 16

2.3.2 Chia sẻ bí mật ngưỡng Shamir và Mã hóa

Elgamal:

2.3.2.1 Mã hóa đồng cấu Elgamal:

 Hệ mã hóa Elgamal:

 Khái niệm mã hóa đồng cấu

Cho P là tập bản rõ, tạo thành nhóm với phép tính  Cho C là tập bản mã, tạo thành nhóm với phép tính 

Ek(m) là hàm mã hóa bản rõ m theo tham số ngẫu nhiên k Cho 2 văn bản rõ cần mã hóa: m1, m2

Cho k1,k2 là 2 tham số ngẫu nhiên

Hệ mã hóa được gòi là có tính chất đồng cấu nếu có tham

Trang 17

2.3.3 Chia sẻ bí mật ngưỡng Shamir phối hợp với mã hóa Elgamal:

2.3.3.1 Kĩ thuật chia sẻ bí mật:

Là kĩ thuật phân chia khóa k cho 1 tập m thành viên, sao cho t thành viên bất kì có thể tính được khóa k nhưng không một nhóm gồm (t-1) thành viên nào có thể làm được điều đó, người phân chia khóa không nằm trong t thành viên

Để đảm bảo 1 người hay 1 nhóm người của Ban KP không thể biết trước nội dung lá phiếu, người ta dùng kỹ thuật “Chia

rõ được nội dung lá phiếu của cử tri

Trang 18

Sau khi Ban kiểm phiếu KP nhận được phiếu bầu cử của cử tri, mỗi thành viên chỉ được giữ một phần của lá phiếu

Do đó họ không thể tự mình biết được nội dung lá phiếu Khi tất cả các thành viên đồng ý xem nội dung phiếu bầu, họ sẽ ghép các mảnh phiếu để có kết quả là nội dung phiếu bầu

3.3.4 Kĩ thuật “trộn các lá phiếu” (Mixing the Votes):

Để tránh tình huống trên người ta dùng kỹ thuật “Trộn các lá phiếu”

 Kĩ thuật “Trộn lá phiếu”: áp dụng 2 giai đoạn để trộn các lá phiếu lại với nhau:

- Giai đoạn bỏ phiếu:

- Giai đoạn kiểm phiếu:

Trang 19

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

Trang 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 và tham gia

bỏ phiếu

- Ban kiểm phiếu KP thực hiện kiểm phiếu mà không biết nội dung lá phiếu là gì

3.2 Phân tích và thiết kế chương trình:

3.2.1 Phân tích và thiết kế chương trình chữ kí số:

 Phân tích chương trình:

Chương trình có các chức năng sau:

- Tạo khóa: Là quá trình sinh ngẫu nhiên bộ khóa công khai và khóa riêng cho lược đồ chữ kí Elgamal Khóa riêng có thể được sinh hay do người dùng nhập vào Thuật toán được sử dụng là thuật toán sinh khóa Elgamal

- Ký: Sử dụng thuật toán kí Elgamal để tạo ra chữ kí cho thông báo m rồi gán chữ kí vào thông báo

- Mã hóa thông báo đã có chữ kí rồi gửi đi

- Giải mã: Người nhận được văn bản mã, sẽ sử dụng khóa riêng để giải mã thu được văn bản gốc và chữ kí

Trang 21

- Kiểm tra chữ kí: xác định xem có đúng của người gửi hay không hay xác định xem văn bản có bị thay đổi không Dùng khóa công khai của thuật toán tạo chữ kí số để xác minh chữ kí trên văn bản m

 Thiết kế chương trình

 Giao diện chương trình:

- Form tạo Message cần kí

- Form tạo khóa công khai và khóa riêng

- Form cung cấp khóa để tạo chữ kí cho văn bản

- Mã hóa văn bản có đính kèm chữ kí bằng mã hóa DES

- Văn bản được mã hóa gửi tới người nhận, người nhận giải mã nhận được văn bản mã có chứa cả chữ kí số

- Người nhận tách chữ kí, thu về văn bản gốc và kiểm tra chữ kí

Trang 22

3.2.2 Phân tích và thiết kế chương trình bỏ phiếu từ xa:

- Kiểm tra thẻ trước khi cử tri bỏ phiếu

- Kiểm phiếu và niêm yết kết quả

 Thiết kế chương trình:

 Thiết kế cơ sở dữ liệu:

- Bảng lưu giữ các thông tin của cử tri: Xác định danh sách các cử tri tham gia bầu cử Bảng tbl_ThongTinCuTri

- Bảng mô tả mối quan hệ giữa Nhân viên và số thẻ cử tri: Mỗi nhân viên chỉ có một số thẻ cử tri Bảng tbl_NV_CT

- Bảng xác định cử tri đã tham gia bỏ phiếu hay chưa, mỗi cử tri chỉ được bỏ phiếu 1 lần, bảng này nhằm xác định những cử tri nào chưa bỏ phiếu và cử tri nào đã bỏ phiếu Bảng tbl_CT_BP

- Bảng lưu nội dung lá phiếu của các cử tri: Nội dung của

lá phiếu đã được cử tri mã hóa và được lưu trong bảng này Bảng tbl_HomPhieu

 Giao diện chương trình:

Trang 23

- Trang nhập các thông tin của Cử tri được tham gia bỏ phiếu

- Trang Cử tri cung cấp mã số hợp lệ để được cung cấp

Mã cử tri

- Trang kiểm tra Mã cử tri: Sau khi có Mã cử tri, cử tri có thể tham gia bỏ phiếu, nhưng trước khi bỏ phiếu cử tri phải “Xuất trình” Mã cử tri

- Trang bỏ phiếu: Khi thẻ cử tri hợp lệ, cử tri có thể bỏ phiếu

- Trang cung cấp khóa bí mật: Ban kiểm phiếu gồm 2 thành viên, để kiểm phiếu mỗi thành viên 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ế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 thực

Trang 24

KẾT LUẬN

Trên đây em đã trình bày những nghiên cứu của em về luận văn “Nghiên cứu chữ kí số và 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ó 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ên cứu để hoàn thiện luận văn hơn trong thời gian tới

 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

sơ đồ chữ kí số và mô hình một quá trình bỏ phiếu từ

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

HÌNH ẢNH LIÊN QUAN

Hình 1.1. Quá 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. Quá trình mã hóa và giải mật mã (Trang 5)
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 (Trang 14)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w