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

nghiên cứu kết hợp sơ đồ chia sẻ bí mật shamir và hệ mã hóa elgamal, ứng dụng trong bỏ phiếu điện tử

70 743 2

Đ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

Định dạng
Số trang 70
Dung lượng 1,58 MB

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

Nội dung

Và một điều đặc biệt, hình thức bỏ phiếu này sẽ đáp ứng nhu cầu bầu cử theo cách của những người trẻ đó có thể là bầu cử trực tuyến, có thể là bầu cử qua điện thoại hoặc bầu cử thông qua

Trang 1

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

ĐẠI HỌC THÁI NGUYÊN

TRƯỜNG ĐẠI HỌC CNTT&TT THÁI NGUYÊN

NGUYỄN HẢI TRƯỜNG

NGHIÊN CỨU KẾT HỢP SƠ ĐỒ CHIA SẺ BÍ MẬT SHAMIR VÀ HỆ MÃ HÓA ELGAMAL, ỨNG DỤNG

TRONG BỎ PHIẾU ĐIỆN TỬ

LUẬN VĂN THẠC SỸ KHOA HỌC MÁY TÍNH

THÁI NGUYÊN, 2014

Trang 2

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

ĐẠI HỌC THÁI NGUYÊN

TRƯỜNG ĐẠI HỌC CNTT&TT THÁI NGUYÊN

NGUYỄN HẢI TRƯỜNG

NGHIÊN CỨU KẾT HỢP SƠ ĐỒ CHIA SẺ BÍ MẬT SHAMIR VÀ HỆ MÃ HÓA ELGAMAL, ỨNG DỤNG

TRONG BỎ PHIẾU ĐIỆN TỬ

Chuyên ngành: Khoa học máy tính

Trang 3

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

LỜI CAM ĐOAN

Tên tôi là: Nguyễn Hải Trường

Sinh ngày: 05/11/1980

Học viên lớp cao học CHK11G - Trường Đại học Công nghệ thông tin và Truyền thông – Đại học Thái Nguyên

Hiện đang công tác tại: Trường THPT Ỷ La

Xin cam đoan: Đề tài “Nghiên cứu kết hợp sơ đồ chia sẻ bí mật Shamir và hệ

mã hóa Elgamal, ứng dụng trong bỏ phiếu điện tử” do Thầy giáo TS Vũ Mạnh

Xuân hướng dẫn là công trình nghiên cứu của riêng tôi Tất cả tài liệu tham khảo đều

có nguồn gốc, xuất xứ rõ ràng

Tác giả xin cam đoan tất cả những nội dung trong luận văn đúng như nội dung trong đề cương và yêu cầu của thầy giáo hướng dẫn Nếu sai tôi hoàn toàn chịu trách nhiệm trước hội đồng khoa học và trước pháp luật

Thái Nguyên, ngày tháng năm 2014

TÁC GIẢ LUẬN VĂN

Trang 4

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

LỜI CẢM ƠN

Sau sáu tháng nghiên cứu và làm việc nghiêm túc, được sự động viên, giúp đỡ

và hướng dẫn tận tình của Thầy giáo hướng dẫn TS Vũ Mạnh Xuân, luận văn với đề

tài “Nghiên cứu kết hợp sơ đồ chia sẻ bí mật Shamir và hệ mã hóa Elgamal, ứng

dụng trong bỏ phiếu điện tử” đã hoàn thành

Tôi xin bày tỏ lòng biết ơn sâu sắc đến:

Thầy giáo hướng dẫn TS Vũ Mạnh Xuân đã tận tình chỉ dẫn, giúp đỡ tôi hoàn thành luận văn này

Trường THPT Ỷ La đã tạo điều kiện về mặt thời gian giúp tôi yên tâm học tập Khoa sau Đại học Trường Đại học công nghệ thông tin và truyền thông đã giúp

đỡ tôi trong quá trình học tập cũng như thực hiện luận văn

Tôi xin chân thành cảm ơn bạn bè, đồng nghiệp và gia đình đã động viên, khích lệ, tạo điều kiện giúp đỡ tôi trong suốt quá trình học tập, thực hiện và hoàn thành luận văn này

TÁC GIẢ LUẬN VĂN

Trang 5

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

MỤC LỤC

LỜI CAM ĐOAN i

LỜI CẢM ƠN ii

DANH MỤC HÌNH VẼ iii

DANH MỤC BẢNG BIỂU v

MỞ ĐẦU 1

CHƯƠNG 1 BỎ PHIẾU ĐIỆN TỬ 4

1.1 Tổng quan về bỏ phiếu điện tử 4

1.1.1 Khái niệm về bỏ phiếu 4

1.1.2 Khái niệm bỏ phiếu điện tử 4

1.1.3 Các thành phần trong hệ thống bỏ phiếu điện tử 5

1.1.4 Các giai đoạn bỏ phiếu điện tử 5

1.2 Mật mã trong bỏ phiếu điện tử 6

1.2.1 Kiểm tra tổng các phiếu bầu thay vì kiểm tra từng lá phiếu 6

1.2.2 Mật mã ngưỡng giúp đạt tính phân quyền trong kiểm phiếu 9

1.2.3 Mã hóa xác suất giúp giữ vững tính ẩn danh của phiếu bầu 9

1.2.4 Chứng minh tương tác để chống việc bán phiếu bầu 10

Kết luận chương 1 11

CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 13

2.1 Tổng quan về an toàn và bảo mật thông tin 13

2.1.1 Sự cần thiết của bảo đảm an toàn thông tin 13

2.1.2 Khái niệm an toàn thông tin 13

2.1.3 Các phương pháp bảo vệ thông tin 15

2.1.4 An toàn thông tin bằng mật mã 16

2.1.5 Vai trò của hệ mật mã 17

2.1.6 Phân loại hệ mật mã 18

2.1.7 Tiêu chuẩn đánh giá hệ mật mã 19

Trang 6

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

2.2 Cơ sở toán học của mật mã 19

2.2.1 Nhóm , vành và không gian Zp 19

2.2.2 Bài toán logarit rời rạc 20

2.3 Mã hóa 21

2.3.1 Mã hóa dữ liệu 21

2.3.2 Phân loại 24

2.3.3 Ưu khuyết điểm của hai phương pháp 28

Kết luận chương 2 29

CHƯƠNG 3 ỨNG DỤNG HỆ MẬT ELGAMAL SƠ ĐỒ CHIA SẺ BÍ MẬT TRONG BỎ PHIẾU ĐIỆN TỬ 30

3.1 Hệ mật mã khóa công khai 30

3.1.1 Tổng quan về hệ mật mã khóa công khai 30

3.1.2 Hệ mật Elgamal 31

3.2 Chia sẻ khóa bí mật 33

3.2.1 Kỹ thuật Chia sẻ khóa bí mật (Secret Sharing) 33

3.2.2 Các sơ đồ chia sẻ bí mật: 34

3.3 Ứng dụng hệ mã hóa đồng cấu Elgamal và sơ đồ chia sẻ bí mật Shamir trong một số bài toán bỏ phiếu điện tử 38

3.3.1 Ứng dụng hệ mã hóa Elgamal cho bỏ phiếu đồng ý /không đồng ý 38

3.3.2 Sơ đồ chia sẻ bí mật Shamir kết hợp với hệ mã hóa Elgamal cho bài toán loại bỏ phiếu chọn L trong K 40

3.4 Khảo sát thực trạng tại Văn phòng UBND Tỉnh Tuyên Quang 44

3.4.1 Giới thiệu chung về Văn phòng UNND Tỉnh Tuyên Quang 44

3.4.2 Thực trạng các cuộc bỏ phiếu/bầu cử tại VP UBND Tỉnh 46

3.4.3 Một số mẫu biểu liên quan 46

3.5 Xây dựng chương trình bỏ phiếu điện tử 50

3.5.1 Khảo sát thực trạng và phát biểu bài toán 50

3.5.2 Chương trình demo 51

3.5.3 Một số kết quả đạt được 54

Kết luận chương 3 59

KẾT LUẬN 61

TÀI LIỆU THAM KHẢO 62

Trang 7

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

DANH MỤC HÌNH VẼ

Hình 2.1 Mã hoá với khoá mã và khoá giải giống nhau 18

Hình 2.2 Quy trình mã hóa dữ liệu 22

Hình 2.3 Sơ đồ mã hóa và giải mã 23

Hình 2.4 Sơ đồ mã hóa và giải mã bằng khóa riêng 25

Hình 2.5 Sơ đồ mã hóa và giải mã bằng khóa công khai 26

Hình 3.1 Sơ đồ mã hóa công khai 30

Hình 3.2 Sơ đồ bỏ phiếu đồng ý/ không đồng ý 39

Hình 3.3 Sơ đồ bỏ phiếu chọn L trong K 42

Hình 3.4 Sơ đồ tổ chức Văn phòng UBND Tỉnh Tuyên Quang 45

Hình 3.5 Thủ tục qui trình bầu cử hội đồng nhân dân cấp tỉnh 49

Hình 3.6 Mẫu danh sách cử tri 50

Hình 3.7 Giao diện chương trình chính 55

Hình 3.8 Giao diện chương trình bỏ phiếu có/không đồng ý 56

Hình 3.9 Giao diện chương trình bỏ phiếu chọn L trong K 58

Trang 8

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

DANH MỤC BẢNG BIỂU

Bảng 2.1 Các ƣu khuyết điểm của hệ thống khóa bí mật (khóa đối xứng) 28

Bảng 2.2 Các ƣu khuyết điểm của hệ thống mã hóa khóa công khai 28

Bảng 3.1 Một số ví dụ về mã hóa và giải mã 32

Bảng 3.2 Các file chính để minh họa Bài toán bỏ phiếu có/không đồng ý 52

Bảng 3.3 Các file chính để minh họa Bài toán bỏ phiếu “chọn L trong K” 54

Trang 9

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

MỞ ĐẦU

1 Tính khoa học và cấp thiết của đề tài

Trong những năm gần đây, sự phát triển, hội tụ và tương tác các xu thế công nghệ

đã mở ra nhiều cơ hội phát triển cho Chính phủ điện tử Một trong những phương diện mới đánh dấu sự phát triển của Chính phủ điện tử và đã được kiểm chứng ở một số

nước phương Tây là bỏ phiếu điện tử

Phương thức bỏ phiếu truyền thống gặp phải một số hạn chế: với những cử tri ở vùng sâu vùng xa, khoảng cách về địa lý sẽ bị hạn chế việc thực hiện được quyền bỏ phiếu của mình; tính độc lập, cá nhân và quyền riêng tư của cử tri sẽ bị ảnh hưởng lớn; tính minh bạch, niềm tin vào số lần bỏ phiếu của một cử tri; việc đảm bảo an ninh cho bầu cử, tính minh bạch kết quả bầu cử, sự tham gia và thái độ tham gia của những cử tri trẻ đối với cuộc bầu cử; tính an ninh của những lá phiếu trong quá trình vận chuyển

và kiểm phiếu Cùng với đó là quá trình chuẩn bị cơ sở vật chất, đào tạo nhân lực phục

vụ cho cuộc bầu cử Đây quả là những khó khăn, thách thức vô cùng lớn

Trong khi đó, với hình thức bỏ phiếu điện tử, mọi người dân đều có thể tự tay bỏ những lá phiếu của mình cho dù họ đang ở đâu, làm gì Hơn nữa, nó còn đảm bảo được tính cá nhân và quyền riêng tư trong lá phiếu của mình, đảm bảo an ninh do không mất quá trình vận chuyển “thủ công” hòm phiếu từ nhiều địa điểm khác nhau

mà nó đã được lưu trữ ngay lập tức vào hệ thống cơ sở dữ liệu Thay vì đào tạo một đội ngũ cán bộ khổng lồ để phục vụ cho công tác bầu cử, việc bỏ phiếu điện tử sẽ giản tiện tới mức tối đa về nhân lực Và một điều đặc biệt, hình thức bỏ phiếu này sẽ đáp ứng nhu cầu bầu cử theo cách của những người trẻ đó có thể là bầu cử trực tuyến, có thể là bầu cử qua điện thoại hoặc bầu cử thông qua Facebook, Twiter, Youtube… Thông qua hệ thống Interner và những thiết bị thông minh, chính phủ có thể dễ dàng kết nối tất cả quá trình trước, trong và sau bầu cử nhanh, gọn, nhẹ; thu hút được đông đảo cử tri và không phân biệt đối tượng, vị trí địa lý Điều này chắc chắn sẽ giảm bớt sức nặng tối đa cho cuộc bầu cử và mang lại thành công cho nó Qua đó cũng thấy được tính ưu việt của hình thức bỏ phiếu điện tử Với chính phủ, bỏ phiếu điện tử là một bước cụ thể hóa của chính phủ điện tử và được đánh giá là giải pháp hữu hiệu cho việc bầu cử của các quốc gia

Trên thế giới, khái niệm bỏ phiếu điện tử (e-voting) không còn xa lạ gì đối với các nước phát triển, nhất là ở Bắc Mỹ và Châu Âu Tại Châu Á, chỉ có ba nước

đã từng thử nghiệm hệ thống bầu cử điện tử, đó là Hàn Quốc, Nhật Bản và

Trang 10

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Ấn Độ, những nước có trình độ công nghệ phát triển cao Tuy nhiên bầu cử điện tử tại ba nước này vẫn chưa được xem là thực sự thành công khi kết quả thu được từ những lá phiếu điện tử vẫn còn nhiều nghi vấn Vấn đề lớn nhất chính là tính bảo mật của toàn hệ thống

Tại Việt Nam bỏ phiếu điện tử mới chỉ dừng ở mục đích bầu chọn, bình chọn (bầu chọn Vịnh Hạ Long là di sản Thiên nhiên thế giới, bình chọn bài hát hay trên sóng truyền hình ) song chưa thể triển khai vào bầu cử Quốc hội do còn nhiều hạn chế (vấn

đề ngân sách, giáo dục ý thức cho người dân, quá trình phổ biến, huấn luyện phương thức thực hiện cho các cấp, các bộ phận liên quan ) Đây rõ ràng là một khoảng trống khá lớn, nhất là việc kinh phí lắp đặt hệ thống máy bầu cử hay trở ngại trong khoảng cách vùng miền

Để hoạt động bỏ phiếu hay bỏ phiếu phát huy đúng tác dụng thì cần đảm bảo hai

yêu cầu về tính kiểm tra được và tính tự do trong lựa chọn [1], [2], [9] Điều này chỉ

có thể được thực hiện nhờ mật mã Người đầu tiên đặt nền móng cho việc xây dựng các hệ bỏ phiếu tích hợp các phương pháp mật mã là Chaum vào năm 1981 [3] Kể từ

đó đến nay, các công trình công bố trên thế giới đều tập trung vào xây dựng ba mô hình bỏ phiếu cơ bản là: mô hình xáo trộn phiếu [3], mô hình chữ ký mù [4] và mô hình sử dụng mã hóa đồng cấu [6],[7],[9] Trong đó, do tính ưu việt trong giải quyết vấn đề tính kiểm tra được và tính tự do trong lựa chọn mà gần đây, mô hình mã hóa đồng cấu được tập nghiên cứu nhiều nhất Hiện tại ở Việt Nam, các công trình như [1], [2] mới chỉ dừng lại ở việc đề xuất áp dụng các mô hình bỏ phiếu mà chưa thực sự triển khai trên một ứng dụng cụ thể

Chính vì vậy, được sự hướng dẫn của Thầy giáo, TS Vũ Mạnh Xuân, tác giả lựa

chọn đề tài luận văn tốt nghiệp “Nghiên cứu kết hợp sơ đồ chia sẻ bí mật Shamir và

hệ mã hóa Elgamal, ứng dụng trong bỏ phiếu điện tử” với mong muốn áp dụng các

kiến thức đã được học, xây dựng thử nghiệm mô hình bỏ phiếu điện tử tại văn phòng

ủy ban nhân dân tỉnh Tuyên Quang

2 Mục tiêu, đối tượng và phạm vi nghiên cứu của đề tài

Qua việc phân tích, khảo sát và đánh giá thực trạng bỏ phiếu điện tử tại Việt Nam cũng như thế giới, kết hợp với nghiên cứu các kỹ thuật, phương pháp, thuật toán mã hóa, mục tiêu của luận văn được xác định là: Ứng dụng tính chất đồng cấu của hệ mã hóa khóa công khai Elgamal và kỹ thuật chia sẻ khóa bí mật để giải quyết hai bài toán

Trang 11

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

bỏ phiếu điện tử phổ biến nhất hiện nay: bỏ phiếu có/không đồng ý và bỏ phiếu chọn

L trong K

Với bài toán bỏ phiếu có/không , luận văn lựa chọn hệ mã hoá Elgamal do hệ mã này có

tính chất đồng cấu với phép cộng và phép nhân, nhờ đó có thể tính được kết quả trong cuộc

bỏ phiếu “có/không” thông qua tổng các phiếu bầu mà không cần giải mã từng lá phiếu

Với bài toán bỏ phiếu “chọn L trong K”, ngoài yêu cầu mã hóa được nội dung lá

phiếu còn phải đảm bảo sự minh bạch, chính xác trong kiểm tra kết quả bỏ phiếu trong

điều kiện các cử tri không tin vào một số thành viên BKP Vì vậy, tác giả đề xuất việc

kết hợp sơ đồ chia sẻ bí mật có ngưỡng giới hạn Shamir và hệ mã hóa đồng cấu

Elgamal để giải bài toán “chọn L trong K”

3 Phương pháp luận nghiên cứu

Phương pháp nghiên cứu lý thuyết: Tổng hợp tài liệu; Nghiên cứu các tài liệu về

bỏ phiếu điện tử; Nghiên cứu về hệ mã hóa công khai, hệ mật Elgamal, sơ đồ chia sẻ

bí mật Shamir và kết hợp sơ đồ chia sẻ bí mật Shamir và hệ mật Elgamal; Tìm hiểu

các kiến thức liên quan

Phương pháp nghiên cứu thực nghiệm: Sau khi nghiên cứu lý thuyết, phát biểu

bài toán, đưa ra giải pháp xử lý; Mô phỏng thử nghiệm chương trình trên phần mềm

Matlab; Đánh giá các kết quả đạt được

Phương pháp trao đổi khoa học: Thảo luận, xemina, lấy ý kiến chuyên gia, công

bố các kết quả nghiên cứu trên tạp chí khoa học

4 Nội dung và bố cục của luận văn

Nội dung luận văn bao gồm 3 chương:

Chương 1: “Bỏ phiếu điện tử” Chương này giới thiệu tổng quan về bỏ phiếu

điện tử, các thành phần chính trong hệ thống và qui trình bỏ phiếu điện tử Vai trò

của mật mã trong bỏ phiếu điện tử, các tình huống và bài toán cụ thể phát sinh trong

quá trình bỏ phiếu điện tử cũng như phương án giải quyết

Chương 2: “Cơ sở lý thuyết” Từ những bài toán, vấn đề đã đặt ra trong phần mở

đầu và chương 1, chương 2 trình bày tổng quan về an toàn và bảo mật thông tin, cơ sở lý

thuyết về toán học và các phương pháp mã hóa để giải quyết các bài toán đặt ra

Chương 3: “ Ứng dụng hệ mật Elgamal và sơ đồ chia sẻ bí mật trong bỏ phiếu

điện tử”, trong chương này đi sâu vào trình bày và phân tích hệ mã hóa công khai

Elgamal cùng với tính chất đồng cấu của hệ mật này, tiếp đến là sơ đồ chia sẻ bí mật

Trang 12

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

theo ngưỡng Shamir Từ đó chỉ ra ứng dụng của hệ mật Elgamal trong bài toán “bỏ

phiếu Có/ không”; Phối hợp hệ mật Elgamal và sơ đồ chia sẻ bí mật Shamir để giải

quyết bài toán “bỏ phiếu chọn L trong K” Phần cuối chương khảo sát bài toán bầu cử

tại UBND Tỉnh Tuyên Quang, từ đó làm căn cứ để xây dựng chương trình demo cho hai

bài toán “bỏ phiếu Có/ không” và “bỏ phiếu chọn L trong K”

1 CHƯƠNG 1 BỎ PHIẾU ĐIỆN TỬ

Chương 1 nhằm phân tích nhấn mạnh ưu điểm của bỏ phiếu điện tử so với bỏ phiếu thông thường, đồng thời khẳng định vai trò của mật mã trong việc xây dựng các mô hình bỏ phiếu điện tử Trước tiên, phần đầu chương sẽ tổng hợp các kiến thức từ tài liệu [2], [1] để giới thiệu tổng quan về bỏ phiếu điện tử như: khái niệm, các thành phần, các giai đoạn trong hệ thống bỏ phiếu điện tử Tiếp đó, nội dung chương tập trung vào phân tích ứng dụng của mật mã trong việc kiểm tra tổng các phiếu bầu thay

vì kiểm tra từng lá phiếu, phân quyền trong kiểm phiếu , giữ vững tính ẩn danh của phiếu bầu và cuối cùng là chứng minh tương tác để chống việc bán phiếu bầu Những nội dung trên cũng được tổng hợp từ [2],[8], [10]

1.1 Tổng quan về bỏ phiếu điện tử

1.1.1 Khái niệm về bỏ phiếu

Theo [1] thì bỏ phiếu là việc người dùng phiếu để bày tỏ sự lựa chọn hay thái độ của mình trong cuộc bầu cử hoặc biểu quyết Một cuộc bỏ phiếu thành công phải bảo đảm các tính chất:

- Quyền bỏ phiếu: chỉ người có quyền bầu cử mới được bỏ phiếu Mỗi cử tri chỉ được bỏ phiếu một lần

- Bí mật: không thể biết được lá phiếu nào đó là của ai, trừ cử tri của nó

- Kiểm soát kết quả: có thể phát hiện được những sai sót trong quá trình bỏ phiếu Cho đến nay các cuộc bỏ phiếu vẫn được thực hiện theo cách truyền thống, tuy nhiên với tốc độ phát triển của ngành công nghệ thông tin, đặc biệt là xu thế thực hiện

“Chính phủ điện tử” thì việc “bỏ phiếu điện tử” thay thế phương thức truyền thống là điều sẽ diễn ra trong tương lai gần

1.1.2 Khái niệm bỏ phiếu điện tử

Người ta bỏ phiếu để bầu cử các chức vụ, chức danh hay để thăm dò dư luận về một kế hoạch, chính sách nào đó Hiện nay có 2 loại bỏ phiếu chính Bỏ phiếu trực tiếp

Trang 13

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

tại hòm phiếu bằng các lá phiếu in trên giấy Bỏ phiếu từ xa bằng các lá phiếu “số hóa” tạm gọi là các lá phiếu điện tử từ các máy tính cá nhân trên mạng, trên điện thoại di động…Nó cũng được gọi là bỏ phiếu điện tử

Bỏ phiếu điện tử là bỏ phiếu bằng các phương pháp điện tử Các hệ thống bỏ phiếu điện tử cho phép cử tri sử dụng các kỹ thuật mã hóa, để giữ bí mật lá phiếu điện tử trước khi chuyển đến hòm phiếu qua các kênh công khai Cử tri có thể bỏ phiếu qua Internet, các máy bỏ phiếu tự động

1.1.3 Các thành phần trong hệ thống bỏ phiếu điện tử

Cử tri: Là người tham gia bỏ phiếu Cử tri có quyền hợp lệ để bỏ phiếu, đồng

thời là người giám sát cuộc bầu cử: kiểm tra xem lá phiếu của mình có được đếm không?

Ban điều hành (ĐH): Quản lý các hoạt động bỏ phiếu, trong đó có thiết lập

danh sách cử tri cùng các hồ sơ của mỗi cử tri, quy định cơ chế định danh cử tri

Ban đăng ký (ĐK): Nhận dạng cử tri và cấp quyền bỏ phiếu cho cử tri, theo dõi cuộc bầu cử chống lại việc cử tri bỏ phiếu hai lần Có hệ thống ký hỗ trợ Ban kiểm tra (KT): Kiểm tra cử tri có hợp lệ không? Nội dung lá phiếu có hợp

lệ không? (Vì là lá phiếu đã mã hóa nên ban kiểm phiếu không biết được lá phiếu có hợp lệ không, nên cần xác minh tính hợp lệ của lá phiếu trước khi nó chuyển đến hòm phiếu)

Ban kiểm phiếu (KP): Kiểm phiếu và thông báo kết quả bầu cử Có hệ thống kiểm phiếu hỗ trợ

Hệ thống phân phối khóa tin cậy: Cung cấp khóa ký của ban ĐK, quá trình

mã hóa và giải mã lá phiếu

Hệ thống ký: Giúp ban ĐK ký vào các định danh cử tri

Hệ thống kiểm phiếu: Giúp ban KP tính kết quả cuộc bầu cử

Bảng niêm yết công khai (BB): Giúp theo dõi quá trình bầu cử Đây là kênh liên lạc công khai của tất cả các thành phần tham gia hệ thống bỏ phiếu điện tử

1.1.4 Các giai đoạn bỏ phiếu điện tử

Bỏ phiếu điện tử gồm 3 giai đoạn chính: Đăng ký, bỏ phiếu, kiểm phiếu và công bố kết quả

Giai đoạn đăng ký bỏ phiếu:

Trang 14

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Chuẩn bị các thành phần kỹ thuật của hệ thống bỏ phiếu cũng như cơ cấu tổ chức Ban KP, ban ĐK, ban KT được chỉ định Danh sách các cử tri cũng được thiết lập Trong bước này, quan trọng nhất là cơ chế định danh người gửi dùng trong quá trình

bỏ phiếu của cử tri

Giai đoạn bỏ phiếu:

Các cử tri thực hiện bỏ phiếu Các cử tri phải có một hình thức định danh tính hợp

lệ của lá phiếu Thêm vào đó, một số kỹ thuật mã hóa cần được áp dụng để bảo đảm tính toàn vẹn của lá phiếu

Giai đoạn kiểm phiếu và công bố kết quả:

Ban KP sẽ tính toán kết quả dựa vào các lá phiếu đã thu thập, sau đó công bố kết quả

1.2 Mật mã trong bỏ phiếu điện tử

1.2.1 Kiểm tra tổng các phiếu bầu thay vì kiểm tra từng lá phiếu

Để hoạt động bỏ phiếu hay bỏ phiếu phát huy đúng tác dụng thì cần đảm bảo hai yêu cầu:

- Tính kiểm tra được: việc kiểm phiếu được kiểm tra một cách công khai và mỗi

cử tri đều có thể kiểm tra chắc chắn rằng lá phiếu của mình đã được tính

- Tính tự do trong lựa chọn: mỗi cử tri đều được đảm bảo tuyệt đối quyền lựa

chọn lá phiếu của mình, không bị ai ép buộc và cũng không thể bán phiếu bầu của mình cho bất cứ bên nào

Tuy nhiên, các hệ thống bỏ phiếu truyền thống không đạt được đồng thời hai yêu cầu trên Trong một số cuộc bỏ phiếu, để đảm bảo yêu cầu thứ nhất thì người ta công khai danh sách ai đã bầu cho ai, vì thế việc kiểm phiếu là hoàn toàn công khai và ai cũng có thể kiểm tra phiếu bầu của mình đã được tính Nhưng, điều đó lại không đảm bảo quyền hoàn toàn tự do lựa chọn của cử tri: người bầu có thể bị khống chế buộc phải bầu cho một ứng cử viên hoặc người bầu có thể bán lá phiếu của mình vì chứng minh được cho người mua thấy mình đã bầu cho ai

Để tránh những hạn chế của việc cử tri bị khống chế hoặc việc mua bán phiếu bầu,

hầu hết các cuộc bỏ phiếu chọn việc đảm bảo yêu cầu thứ hai bằng cách ẩn danh lá

phiều bầu: cử tri đến trung tâm bỏ phiếu, được phát một lá phiếu bầu, chọn ứng cử

phiên và cho lá phiếu ẩn danh vào thùng phiếu Cử tri do vậy hoàn toàn tự do lựa chọn

và bản thân họ khi ra khỏi phòng bỏ phiếu cũng không thể chứng minh là mình đã bỏ

Trang 15

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

cho ai và do vậy cũng không bán được phiếu bầu Cách làm này lại không thể đảm bảo yêu cầu thứ nhất: một khi lá phiếu đã cho vào hòm phiếu, cử tri buộc phải đặt tin tưởng vào người kiểm phiếu và không có cách nào chắc chắn được liệu lá phiếu của mình sẽ được tính và cũng không thể kiểm tra liệu lá phiếu của mình có bị thay đổi

Cả hai tính chất kiểm tra được và tự do trong lựa chọn của một hệ thống bỏ phiếu đều rất cơ bản nhưng luôn bị coi là đối ngược nhau và do vậy không thể cùng đạt được Tuy nhiên, các phương pháp mật mã chứng tỏ rằng ta có thể xây dựng các hệ bỏ phiếu đạt được cả hai yêu cầu trên

Để đồng thời đạt tính kiểm tra được và tính tự do trong lựa chọn, ta phải làm sao kết hợp được cả hai phương pháp bỏ phiếu nêu trên: vừa công bố danh sách các phiếu bầu để cử tri có thể kiểm tra phiếu của mình đã được tính, vừa đảm bảo sự ẩn danh cho

cử tri trong lựa chọn Một cách tự nhiên, các hàm mã hóa được sử dụng để mã lựa chọn của cử tri nhằm che dấu lựa chọn của cử tri trong phiếu bầu Mặt khác, để đảm bảo tính bí mật cho việc kiểm phiếu, chìa khóa giải mã phải được giữ kín và không thể chia sẻ với cử tri Từ đó dẫn tới viêc sử dụng các hệ mã hóa khóa công khai: khóa để

mã hóa là công khai và việc mã hóa lựa chọn được thực hiện dễ dàng mà không cần biết thông tin bí mật nào, khóa để giải mã được giữ bí mật và vì vậy chỉ có những người có thầm quyền mới có thể kiểm phiếu bầu

Với việc dùng một thuật toán mã hóa E với cặp khóa công khai pk và bí mật sk,

lá phiếuX sẽ bị mã thành C A E pk X( , ) và bất kể ai không có khóa bí mật sksẽ không thể tính đượcXtừ C A Khi đó, nếu cử tri A bầu cho ứng cử viên X thì thay vì công bố ( ,A X), người ta sẽ công bố( , C )A A

Tuy nhiên, việc sử dụng mã hóa khóa công khai một cách đơn giản như trên là chưa thể đủ để giải quyết vấn đề, nhất là trong việc đảm bảo tính chất ẩn danh của cử tri trong phiếu bầu Trở ngại là nếu ta vẫn sử dụng phương pháp kiểm phiếu thông thường thì cần giải mã lá phiếu của Avà do vậy lựa chọn củaA không còn là bí mật với những người kiểm phiếu Tính tự do trong lựa chọn yêu cầu sự lựa chọn củaAđược bí mật không chỉ với người quan sát mà ngay cả với người kiểm phiếu Giải quyết vấn đề bí mật phiếu bầu cho cử tri đã có một số phương án như việc dùng các hệ mix-net (xáo trộn phiếu) hay chữ ký mù (blind signature) nhưng có lẽ ý tưởng nổi bật nhất là phương pháp gộp phiếu bầu, được đề nghị lần đầu tiên bởi Cohen

và Fischer Error! Reference source not found Trái với phương pháp kiểm từng

phiếu một, tất cả các phiếu bầu được gộp lại với nhau và việc kiểm phiếu sẽ được thực

Trang 16

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

hiện duy nhất trên kết quả gộp Kết quả là ta sẽ có trực tiếp tổng các phiếu bầu cho từng ứng cử viên mà không cần phải kiểm tra từng phiếu đơn lẻ Đây là một ý tưởng trọng tâm cho việc tiến tới đảm bảo đồng thời tính kiểm tra được và tính tự do trong lựa chọn của cử tri:

- Lá phiếu của mỗi cử tri được công bố công khai, nhưng lựa chọn thì được mã

hóa để không ai biết ai bầu cho ai Do vậy, A sẽ thấy được lá phiếu của mình đã

đến được trung tâm và không bị thay đổi kết quả lựa chọn

- Khi kiểm phiếu, thay vì giải mã từng lá phiếu và dẫn đến việc phá vỡ tính ẩn danh của lá phiếu, tất cả các lá phiếu sẽ được gộp lại với nhau một cách công khai và việc giải mã chỉ thực hiện trên kết quả tổng thể Do phép gộp là công khai nên mọi cử tri đều có thể tự thực hiện thao tác này và kiểm tra liệu lá phiếu của mình đã thực sự được tính đến

- Các hệ mã hóa đồng cấu (homomorphic encryption) giúp giải quyết vấn đề trên một cách tương đối đơn giản Một hệ mã đồng cấu với phép cộng cho ta tính chất: gộp hai bản mã lại với nhau (phép gộp, ký hiệu là , có thể là phép cộng, phép nhân hay một toán tử nào đó) sẽ cho ta bản mã có nội dung là tổng của hai bản rõ tương ứng:E pk m( , 1 ) E pk m( , 2 ) E pk m( , 1 m2 )

Với một hệ mã có tính chất như vậy, ta có thể dễ dàng hình dung một cuộc bỏ phiếu cho ứng cử viên XY như sau: mỗi lá phiếu cho XE pk( ,1)và cho Y là ( ,0)

E pk Lấy gộp của tất cả các lá phiếu rồi giải mã sẽ cho ta tổng số phiếu bầu cho

X , và từ đó cũng tính được số phiếu bầu cho Y Nếu có nhiều ứng cử viên hơn là hai, cách làm cũng gần như tương tự, với việc mỗi phiếu bầu cho 1 ứng cử viên sẽ được mã

ở những khoảng số khác nhau Chẳng hạn nếu có 3 ứng cử viên X Y, , Z và số cử tri ít hơn 100 triệu thì một phiếu bầu cho X có thể như là mã của 1, một phiếu bầu cho

Y có thể như là mã của 8

10 , một phiếu bầu cho Zcó thể như là mã của 16

10 : Phiếu cho X là mã của 00000000 00000000 00000001

Phiếu cho Y là mã của 00000000 00000001 00000000

Phiếu cho Zlà mã của 00000001 00000000 00000000

Sau khi gộp tất cả các phiếu và giải mã lá phiếu gộp với khóa bí mật sksẽ cho ta kết quả là M và tổng số phiếu bầu cho các ứng cử viên được xác định trong các khoảng số tương ứng

Chẳng hạn với M 09670002 04823458 15712347

Trang 17

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

thì có nghĩa ứng cử viên X được 9670002 phiếu, ứng cử viên Y được 4823458 phiếu

và ứng cử viên Zđược 15712347 (và thắng cử)

1.2.2 Mật mã ngưỡng giúp đạt tính phân quyền trong kiểm phiếu

Phương án sử dụng mật mã như trên vẫn đặt ra một vấn đề: việc kiểm phiếu chỉ cần thực hiện trên kết quả gộp của các phiếu bầu nhưng nếu người kiểm phiếu bất chấp quy tắc mà cố tình giải mã từng lá phiếu để phá tính ẩn danh của lá phiếu thì sao? Ý tưởng để giải quyết vấn đề này là hệ thống sẽ phải được xây dựng để quyền kiểm phiếu được phân ra cho nhiều bên và chỉ khi các bên hợp tác với nhau thì việc giải mã mới thực hiện được Khi đó, một mặt việc tính tổng số phiếu bầu vẫn được đảm bảo khi tất cả cùng nhau hợp tác giải mã kết quả gộp của tất cả các phiếu bầu, mặt khác lựa chọn trong từng lá phiếu sẽ chỉ bị lộ khi tất cả các bên kiểm phiếu cùng cấu kết với nhau làm sai luật Khi quyền kiểm phiếu được phân chia cho các bên có lợi ích đối lập thì việc cùng cấu kết với nhau là rất ít có khả năng xả ra

Tóm lại, một hệ bỏ phiếu tốt phải đảm bảo tính chất phân quyền kiểm phiếu: không thể có một phía (một người) nào có thể tự thực hiên việc kiểm phiếu; quá trình kiểm phiếu cần sự kết hợp của nhiều bên khác nhau Tính chất phân quyền kiểm phiếu được thực hiện thông qua các hệ mã hóa với ngưỡng (threshold cryptosystems), được xem xét lần đầu bởi Desmedt và Frankel năm 1990 Một hệ mã hóa với ngưỡng là một hệ thống gồm nhiều bên, mỗi bên tự thiết lập một cách độc lập một cặp tham số khóa bí mật/khóa công khai riêng, sau đó khóa công khai cho hệ thống chung được tính thông qua các khóa công khai của các bên Quá trình giải mã chỉ được thiết lập khi các bên cùng hợp tác lại với nhau: mỗi bên độc lập dùng khóa bí mật của mình để tính một kết quả trung gian trên bản mã ; bản mã chỉ được giải hoàn toàn bởi sự kết hợp các kết quả trung gian đó

Các hệ mã hóa ngưỡng có một đặc tính thú vị: các bên có thể cùng xây dựng một khóa công khai thực pkvà một khóa bí mật ảo sktương ứng Tính chất ảo ở chỗ khóa

bí mật sktồn tại nhưng không một bên nào biết, và dù không bên nào biết khóa bí mật nhưng sự giải mã vẫn có thể thực hiện được thông qua sự hợp tác giữa các bên

Trong phạm vi luận văn, tôi sử dụng hệ mã Elgamal – một hệ mã có tính chất đồng cấu với phép cộng và phù hợp cho việc sử dụng trong các hệ bỏ phiếu điện tử

1.2.3 Mã hóa xác suất giúp giữ vững tính ẩn danh của phiếu bầu

Trang 18

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Hệ mã dùng trong bỏ phiếu không thể là một hệ mã tất định ở đó tương ứng một bản rõ chỉ cho duy nhất một bản mã Thực vậy, khi đó mọi lá phiếu dành cho một ứng

cử viên có mã giống nhau và tính ẩn danh dễ dàng bị phá vỡ Do vậy, hệ mã sử dụng bắt buộc phải là một hệ mã xác suất và tương ứng với cùng một lựa chọn sẽ có một tập rất lớn các bản mã tương ứng Các hệ mã xác suất được giới thiệu lần đầu bởi

Goldwasser-Micali năm 1982 Error! Reference source not found nhằm tăng cường

tính an toàn cho các hệ mã (thực tế hiện nay, điều kiện cần để một hệ mã đạt an toàn theo mức chuẩn hóa là nó phải là một hệ mã xác suất)

Đối với hệ thống bỏ phiếu điện tử, nay lá phiếu của A bầu cho ứng cử viên X sẽ có dạng ( ,A C A E pk X r( , , ))với r là một giá trị ngẫu nhiên đủ lớn để khả năng xảy ra đụng độ (một giá trị ngẫu nhiên trên hai lá phiếu khác nhau) là vô cùng nhỏ Các hệ

mã hiện dùng trong thực tế như mã Elgamal hay các phiên bản tăng cường của RSA đều là các hệ mã xác suất và có tính chất đồng cầu với phép cộng, và do vậy nó được

sử dụng trong các hệ bỏ phiếu điện tử

1.2.4 Chứng minh tương tác để chống việc bán phiếu bầu

Tính tự do trong lựa chọn thể hiện ở cả hai khía cạnh:

- Cử tri được đảm bảo sự ẩn danh trong lá phiếu của mình nhằm tránh bị gây áp lực trong lựa chọn

- Hệ thống phải đảm bảo là cử tri không có cách nào có thể chủ động để bán phiếu của mình

Khía cạnh thứ nhất được đảm bảo thông qua sự mã hóa của lá phiếu Khi lá phiếu được niêm yết ( ,A C A E pk X r( , , ))thì không ai có thể biết là cử tri X được lựa chọn trong giá trị C A Ngay cả với những người kiểm phiếu, thông qua giải mã với ngưỡng, cũng không biết lựa chọn của từng lá phiếu Tuy nhiên, sự ẩn danh này chưa đủ để chống lại việc chủ động bán phiếu Theo cách hình dung tự nhiên, cử tri Asẽ tự do tạo giá trị phiếu bầu cho mình bằng cách chọn r và tính mã từ khóa công khai của hệ thống C A E pk X r( , , ) Tuy nhiên, khi đó giá trị C Alà ẩn danh với tất cả mọi người quan sát nhưng một khi Abiết giá trị rthì sẽ có thể chứng minh là mình đã bầu cho

X bằng cách đưa rX cho bất kỳ ai kiểm tra quan hệ C A E pk X r( , , ) Có khả năng chứng minh mình đã bầu cho ai sẽ dẫn tới có khả năng bán phiếu bầu của mình Benaloh và Tuinstra [4] đã lần đầu nghiên cứu việc xem xét việc ngăn cản cử tri

có khả năng bán phiếu bầu

Trang 19

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Điểm mấu chốt để ngăn việc bán phiếu bầu là không cho cử tri Atoàn quyền tạo lập giá trị lá phiếu C A E pk X r( , , ) Điều đó có nghĩa là phải làm sao để cử Acó thể tính được giá trị C A E pk X r( , , ) mà lại không biết giá trị ngẫu nhiên r Các hệ mã ngẫu nhiên hóa được (randomizable encryption) cho phép ta thực hiện công việc này Một hệ mã ngẫu nhiên hóa được cho phép ta biến đổi một bản

C E pk X r( , , ) của bản rõ X sang một bản mã ngẫu nhiênC E pk X r( , , ) của cùng bản rõ Xnhưng với một giá trị ngẫu nhiên r độc lập với r Với tính chất này , cử tri A khởi đầu bằng việc tạo một giá trị mã C E pk X r( , , )cho lựa chọn của mình và gửi cho hệ thống, hệ thống sẽ làm ngẫu nhiên hóa giá trị lá phiếu của A

sang một bản mã ngẫu nhiên C A E pk X r( , , ) của cùng lựa chọn X và gửi lại cho

A Khi đó C A sẽ là giá trị lá phiếu của Anhưng A không biết giá trị r và không chứng minh cho ai khác biết được rằng C A là bản mã của lựa chọn Xvà vì thế không thể bán được phiếu bầu Mặt khác, hệ thống nhận phiếu chỉ có khả năng làm ngẫu nhiên bản mã chứ không biết được nội dung lựa chọn X của cử tri Avà tính

ẩn danh trong lựa chọn vẫn được đảm bảo

Các hệ mã đồng cấu đều có tính chất ngẫu nhiên hóa được và do vậy có thể được

sử dụng trực tiếp cho việc chống bán phiếu của cử tri Tuy nhiên, phương án trên còn một trở ngại: làm thế nào để cử tri Abiết được là hệ thống đã thực sự làm ngẫu nhiên hóa phiếu bầu của mình chứ không phải là thay phiếu bầu của mình bằng một phiếu bầu cho một lựa chọn khác? Rất may là ở đây các kết quả của chứng minh tương tác

đã có thể áp dụng Một chứng minh tương tác không để lộ tri thức (zero-knowledge proof), được giới thiệu lần đầu bởi Goldwasser, Micali và Rackoff vào năm 1985 [6], người chứng minh hoàn toàn có thể thuyết phục người đối thoại về một quan hệ (ở đây

là quan hệ C Achính là một bản mã ngẫu nhiên hóa của bản mã gốc C) mà không để lộ một chút thông tin gì Nói cách khác, Ahoàn toàn có thể bị thuyết phục là C Alà giá trị

mã của lựa chọn Xnhưng bản thân Alại không có khả năng chứng minh điều đó vì không có thêm bất kể thông tin gì khác Và do không thể chứng minh được mình đã bầu cho ai, Akhông thể bán phiếu bầu của mình

Kết luận chương 1

Qua nội dung chương 1, có thể thấy phương pháp bỏ phiếu điện tử khẳng định được ưu việt vượt trội so với bỏ phiếu truyền thống và là xu hướng tất yếu của tương lai Hệ thống bỏ phiếu điện tử cũng bao gồm các thành phần và cũng phải trải qua các

Trang 20

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

giai đoạn như bỏ phiếu thông thường Tuy nhiên, nhờ sự trợ giúp của kỹ thuật mật mã,

bỏ phiếu điện tử có thể hạn chế thấp nhất các sai nhầm mang yếu tố con người khi đo lường kết quả kiểm phiếu như: đảm bảo sự ẩn danh trong lá phiếu của cử tri tránh việc

cử tri bị khống chế; ngăn ngừa việc mua bán phiếu bầu Cơ sở toán học cho các phương pháp mật mã thường ứng dụng trong bỏ phiếu điện tử sẽ được trình bày chi tiếp trong chương 2

Trang 21

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

1 CHƯƠNG 2 CƠ SỞ LÝ THUYẾT

Nhằm làm căn cứ cho việc đề xuất các giải pháp xây dựng chương trình bỏ phiếu điện tử trong chương 3, nội dung chương 2 trình bày các kiến thức cơ sở nền tảng liên quan Phần đầu chương tổng hợp các vấn đề về an toàn và bảo mật thông tin để từ đó thấy được vị trí và vai trò của an toàn thông tin bằng mật mã Phần tiếp theo trình bày

cơ sở toán học của mật mã với các khái niệm về vành Zn, các phép toán cộng, nhân, bài toán logarrit rời rạc trên không gian Zn Phần cuối chương phân tích vai trò của mã

hóa dữ liệu và giới thiệu hai hệ thống mã hóa thường gặp là mã hóa khóa bí mật và mã hóa khóa công khai Các nội dung nêu trên là các vấn đề đã được công bố trong [2], [7], [8]

2.1 Tổng quan về an toàn và bảo mật thông tin

2.1.1 Sự cần thiết của bảo đảm an toàn thông tin

Ngày nay, sự suất hiện internet và mạng máy tính đã giúp cho việc trao đổi thông tin trở lên nhanh gọn, dễ dàng, Email cho phép người ta nhận hay gửi thư ngay trên máy tính của mình, E-business cho phép thực hiện các giao dịch buôn bán ngay trên mạng

Tuy nhiên lại phát sinh những vấn đề mới Thông tin quan trọng nằm ở kho dữ liệu hay đang trên đường truyền có thể bị trộm cắp, có thể bị làm sai lệch, có thể bị làm giả mạo Điều đó làm ảnh hưởng đến các tổ chức, các công ty hay cả một quốc gia Những

bí mật kinh doanh, tài chính là mục tiêu của các đối thủ cạnh tranh Những tin tức về

an ninh quốc gia là mục tiêu của các tổ chức tình báo trong và ngoài nước

Theo số liệu của CERT (Computer Emegency Response Team: đội cấp cứu máy tính) số lượng các vụ tấn công trên máy internet ngày càng nhiều, quy mô của chúng mỗi ngày một lớn và phương pháp tấn công ngày càng hoàn thiện

Khi trao đổi thông tin trên mạng, những tình huống mới nảy sinh: Người ta nhận được một bản tin trên mạng, thì lấy gì làm đảm bảo rằng nó là của đối tác gửi cho họ Khi nhận được tờ Sec điện tử hay tiền điện tử trên mạng, thì có cách nào xác nhận rằng nó là của đối tác đã thanh toán cho ta Tiền đó là tiền thật hay tiền giả Thông thường người gửi vản bản quan trọng phải ký phía dưới Nhưng khi truyền trên mạng, văn bản hay giấy thanh toán có thể bị trộm cắp và phía dưới nó có thể dán một chữ ký khác Tóm lại với cách thức ký như cũ, chữ kỹ rất dễ bị giả mạo

2.1.2 Khái niệm an toàn thông tin

2.1.2.1 Khái niệm

Trang 22

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Theo [2] an toàn thông tin nghĩa là thông tin được bảo vệ, các hệ thống và dịch vụ có khả năng chống lại những sự can thiệp, lỗi và những tai họa không mong đợi, các thay đổi tác động đến độ an toàn của hệ thống là nhỏ nhất Hệ thống không an toàn là hệ thống tồn tại những điểm: thông tin bị rò rỉ ra ngoài - thông tin dữ liệu trong hệ thống bị người không được quyền truy nhập lấy và sử dụng, thông tin bị thay đổi - các thông tin trong hệ thống bị thay thế hoặc sửa đổi làm sai lệch một phần hoặc hoàn toàn nội dung

Giá trị thực sự của thông tin chỉ đạt được khi thông tin được cung cấp chính xác và kịp thời, hệ thống phải hoạt động chuẩn xác thì mới có thể đưa ra những thông tin có giá trị cao Mục tiêu của an toàn bảo mật trong công nghệ thông tin là đưa ra một số tiêu chuẩn an toàn và áp dụng các tiêu chuẩn an toàn này vào chỗ thích hợp để giảm bớt và loại trừ những nguy hiểm có thể xảy ra Ngày nay với kỹ thuật truyền nhận và

xử lý thông tin ngày càng phát triển và phức tạp nên hệ thống chỉ có thể đạt tới một mức độ an toàn nào đó và không có một hệ thống an toàn tuyệt đối Ngoài ra khi đánh giá còn phải cân đối giữa mức độ an toàn và chất lượng của dịch vụ được cung cấp Khi đánh giá độ an toàn thông tin cần phải dựa trên nội dung phân tích các rủi ro có thể gặp, từ đó tăng dần sự an toàn bằng cách giảm bớt những rủi ro Các đánh giá cần hài hoà với đặc tính, cấu trúc hệ thống và quá trình kiểm tra chất lượng

2.1.2.2 Các yêu cầu an toàn bảo mật thông tin

Ngày nay, với sự phát triển rất nhanh của khoa học công nghệ, các biện pháp tấn công ngày càng tinh xảo hơn, độ an toàn của thông tin có thể bị đe dọa từ nhiều nơi, theo nhiều cách khác nhau, chúng ta cần phải đưa ra các chính sách đề phòng thích hợp Các yêu cầu cần thiết của việc bảo vệ thông tin và tài nguyên:

• Đảm bảo bí mật (Bảo mật) thông tin không bị lộ đối với người không được phép

• Đảm bảo tính tin cậy (Confidentiality): Thông tin và tài nguyên không thể bị truy cập trái phép bởi những người không có quyền hạn

• Đảm bảo tính toàn vẹn (Integrity): Thông tin và tài nguyên không thể bị sửa đổi,

bị thay thế bởi những người không có quyền hạn

• Đảm bảo tính sẵn sàng (Availability): Thông tin và tài nguyên luôn sẵn sàng để đáp ứng sử dụng cho người có quyền hạn

• Đảm bảo tính không thể chối bỏ (Non-repudiation): Thông tin và tài nguyên được xác nhận về mặt pháp luật của người cung cấp

2.1.2.3 Các nội dung an toàn thông tin

Trang 23

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Nội dung chuyên ngành:

- An toàn dữ liệu (data security)

- An toàn cơ sở dữ liệu (database security)

- An toàn hệ điều hành (operation system security)

- An toàn mạng máy tính (network security)

2.1.2.4 Các chiến lược bảo đảm an toàn thông tin

Cấp quyền hạn tối thiểu: Nguyên tắc cơ bản trong an toàn nói chung là “hạn chế

sự ưu tiên” Mỗi đối tượng sử dụng hệ thống (người quản trị mạng, người sử dụng ) chỉ được cấp phát một số quyền hạn nhất định đủ dùng cho công việc của mình

Phòng thủ theo chiều sâu: Nguyên tắc tiếp theo trong an toàn nói chung là “bảo

vệ theo chiều sâu” Cụ thể là tạo lập nhiều lớp bảo vệ khác nhau cho hệ thống

2.1.3 Các phương pháp bảo vệ thông tin

Các giải pháp bảo đảm an toàn thông tin

Phương pháp che giấu, bảo đảm toàn vẹn và xác thực thông tin

- “Che” dữ liệu (mã hóa): thay đổi hình dạng dữ liệu gốc, người khác khó nhận ra

- “Giấu” dữ liệu: Cất giấu dữ liệu này trong môi trường dữ liệu khác

- Bảo đảm toàn vẹn và xác thực thông tin(đánh giấu thông tin)

Kỹ thuật:

- Mã hóa, hàm băm, giấu tin, ký số

- Giao thức bảo toàn thông tin, giao thức xác thực thông tin,

Phương pháp kiểm soát lỗi vào ra của thông tin

- Kiểm soát, ngăn chặn các thông tin vào ra hệ thống máy tính

- Kiểm soát, cấp quyền sử dụng các thông tin trong hệ thống máy tính

Trang 24

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

- Kiểm soát, tìm diệt “sâu bọ” vào trong hệ thống máy tính

- Kỹ thuật: Mật khẩu, tường lửa, mạng riêng ảo, nhận dạng, xác định thực thể, cấp quyền hạn

Phát hiện và xử lý các lỗ hổng trong an toàn thông tin

- Các “lỗ hổng” trong các thuật toán hay giao thức mật mã, giấu tin

- Hạ tầng mật mã khóa công khai(PKI)

- Kiểm soát nối vào – ra: Mật khẩu, tưởng lửa, mạng riêng ảo, cấp quyền hạn

- Kiểm soát và xử lý các lỗ hổng

Các kỹ thuật bảo đảm an toàn thông tin

- Kỹ thuật diệt trừ: Virus máy tính, chương trình trái phép

- Kỹ thuật tường lửa: Ngăn chặn truy cập trái phép, lọc thông tin không hợp pháp

- Kỹ thuật mạng riêng ảo: Tạo ra hành lang riêng cho thông tin “đi lại”

- Kỹ thuật mật mã: Mã hóa, kỹ số, các giao thức mật mã, chống chối cãi

- Kỹ thuật giấu tin: Che giấu thông tin trong môi trường dữ liệu khác

- Kỹ thuật thủy ký: Bảo vệ bản quyền tài liệu số hóa

- Kỹ thuật truy tìm “dấu vết” kẻ trộm tin

Các công nghệ đảm bảo an toàn thông tin

- Công nghệ chung: Tường lửa, mạng riêng ảo, PKI(khóa công khai), thẻ thông minh

- Công nghệ cụ thể: SSL, TLS, PGP, SMINE

2.1.4 An toàn thông tin bằng mật mã

Mật mã là một ngành khoa học chuyên nghiên cứu các phương pháp truyền tin bí mật Mật mã bao gồm : Lập mã và phá mã Lập mã bao gồm hai quá trình: mã hóa và giải mã

Trang 25

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Để bảo vệ thông tin trên đường truyền người ta thường biến đổi nó từ dạng nhận thức được sang dạng không nhận thức được trước khi truyền đi trên mạng, quá trình này được gọi là mã hoá thông tin (encryption), ở trạm nhận phải thực hiện quá trình ngược lại, tức là biến đổi thông tin từ dạng không nhận thức được (dữ liệu đã được mã hoá) về dạng nhận thức được (dạng gốc), quá trình này được gọi là giải mã Đây là một lớp bảo vệ thông tin rất quan trọng và được sử dụng rộng rãi trong môi trường mạng

Để bảo vệ thông tin bằng mật mã người ta thường tiếp cận theo hai hướng:

- Theo đường truyền (Link_Oriented_Security)

- Từ nút đến nút (End_to_End)

Theo cách thứ nhất thông tin được mã hoá để bảo vệ trên đường truyền giữa hai nút

mà không quan tâm đến nguồn và đích của thông tin đó Ở đây ta lưu ý rằng thông tin chỉ được bảo vệ trên đường truyền, tức là ở mỗi nút đều có quá trình giải mã sau đó

mã hoá để truyền đi tiếp, do đó các nút cần phải được bảo vệ tốt

Ngược lại theo cách thứ hai thông tin trên mạng được bảo vệ trên toàn đường truyền từ nguồn đến đích Thông tin sẽ được mã hoá ngay sau khi mới tạo ra và chỉ được giải mã khi về đến đích Cách này mắc phải nhược điểm là chỉ có dữ liệu của người dùng thì mới có thể mã hóa được còn dữ liệu điều khiển thì giữ nguyên để có thể xử lý tại các nút

2.1.5 Vai trò của hệ mật mã

Các hệ mật mã phải thực hiện được các vai trò sau:

- Hệ mật mã phải che dấu được nội dung của văn bản rõ (PlainText) để đảm bảo sao cho chỉ người chủ hợp pháp của thông tin mới có quyền truy cập thông tin (Secrety), hay nói cách khác là chống truy nhập không đúng quyền hạn

- Tạo các yếu tố xác thực thông tin, đảm bảo thông tin lưu hành trong hệ thống đến người nhận hợp pháp là xác thực (Authenticity)

- Tổ chức các sơ đồ chữ ký điện tử, đảm bảo không có hiện tượng giả mạo, mạo danh để gửi thông tin trên mạng

Ưu điểm lớn nhất của bất kỳ hệ mật mã nào đó là có thể đánh giá được độ phức tạp tính toán mà “kẻ địch” phải giải quyết bài toán để có thể lấy được thông tin của dữ liệu

đã được mã hoá Tuy nhiên mỗi hệ mật mã có một số ưu và nhược điểm khác nhau, nhưng nhờ đánh giá được độ phức tạp tính toán mà ta có thể áp dụng các thuật toán mã hoá khác nhau cho từng ứng dụng cụ thể tuỳ theo dộ yêu cầu về độ an toàn

Trang 26

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Các thành phần của một hệ mật mã :

Định nghĩa :

Một hệ mật là một bộ 5 (P,C,K,E,D) thoả mãn các điều kiện sau:

- P là một tập hợp hữu hạn các bản rõ (PlainText), nó được gọi là không gian bản rõ

- C là tập các hữu hạn các bản mã (Crypto), nó còn được gọi là không gian các bản mã Mỗi phần tử của C có thể nhận được bằng cách áp dụng phép mã hoá

Ek lên một phần tử của P, với k ∈ K

- K là tập hữu hạn các khoá hay còn gọi là không gian khoá Đối với mỗi phần tử

k của K được gọi là một khoá (Key) Số lượng của không gian khoá phải đủ lớn để “kẻ địch: không có đủ thời gian để thử mọi khoá có thể (phương pháp vét cạn)

- Đối với mỗi k K có một quy tắc mã e K : P → C và một quy tắc giải mã tương

- Hệ mật mã bất đối xứng (hay còn gọi là mật mã khóa công khai) : Hay còn gọi

là hệ mật mã công khai, các hệ mật này dùng một khoá để mã hoá sau đó dùng một khoá khác để giải mã, nghĩa là khoá để mã hoá và giải mã là khác nhau

Trang 27

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Các khoá này tạo nên từng cặp chuyển đổi ngược nhau và không có khoá nào

có thể suy được từ khoá kia Khoá dùng để mã hoá có thể công khai nhưng khoá dùng để giải mã phải giữ bí mật

Ngoài ra nếu dựa vào thời gian đưa ra hệ mật mã ta còn có thể phân làm hai loại: Mật mã cổ điển (là hệ mật mã ra đời trước năm 1970) và mật mã hiện đại (ra đời sau năm 1970) Còn nếu dựa vào cách thức tiến hành mã thì hệ mật mã còn được chia làm hai loại là mã dòng (tiến hành mã từng khối dữ liệu, mỗi khối lại dựa vào các khóa khác nhau, các khóa này được sinh ra từ hàm sinh khóa, được gọi là dòng khóa ) và mã khối (tiến hành mã từng khối dữ liệu với khóa như nhau)

2.1.7 Tiêu chuẩn đánh giá hệ mật mã

Để đánh giá một hệ mật mã người ta thường đánh giá thông qua các tính chất sau:

Độ an toàn: Một hệ mật được đưa vào sử dụng điều đầu tiên phải có độ an toàn

cao Ưu điểm của mật mã là có thể đánh giá được độ an toàn thông qua độ an toàn tính toán mà không cần phải cài đặt Một hệ mật được coi là an toàn nếu để phá hệ

mật mã này phải dùng n phép toán Mà để giải quyết n phép toán cần thời gian vô

cùng lớn, không thể chấp nhận được

Một hệ mật mã được gọi là tốt thì nó cần phải đảm bảo các tiêu chuẩn sau:

- Chúng phải có phương pháp bảo vệ mà chỉ dựa trên sự bí mật của các khoá, công khai thuật toán

- Khi cho khoá công khai e K và bản rõ P thì chúng ta dễ dàng tính được e K (P) =

biết d K thì không có khả năng để tìm được M từ C, nghĩa là khi cho hàm f: X → Y thì việc tính y=f(x) với mọi x X là dễ còn việc tìm x khi biết y lại là vấn đề khó và

nó được gọi là hàm một chiều

- Bản mã C không được có các đặc điểm gây chú ý, nghi ngờ

Tốc độ mã và giải mã: Khi đánh giá hệ mật mã chúng ta phải chú ý đến tốc độ mã

và giải mã Hệ mật tốt thì thời gian mã và giải mã nhanh

Phân phối khóa: Một hệ mật mã phụ thuộc vào khóa, khóa này được truyền công

khai hay truyền khóa bí mật Phân phối khóa bí mật thì chi phí sẽ cao hơn so với các

hệ mật có khóa công khai Vì vậy đây cũng là một tiêu chí khi lựa chọn hệ mật mã

2.2 Cơ sở toán học của mật mã

2.2.1 Nhóm , vành và không gian Zp

2.2.1.1 Nhóm

Nhóm là cấu trúc bao gồm tập G và toán tử hai ngôi trường G

Trang 28

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Với a,b G, a b G được định nghĩa như sau:

1 a (b c)=(a b) c với mọi a,b,c G

2 Tồn tại e G thoả mãn e a=a e=a với mọi a G, (e gọi là phần tử trung

hoà)

3 Với mỗi a G, tồn tại một phần tử b G thoả mãn b a=a b=e (b là duy nhất

và được gọi là phần tử nghịch đảo của a)

Ký hiệu <G, >là nhóm nhân và <G,+> là nhóm cộng Trong nhóm cộng, phần tử

trung hoà là 0 và phần tử nghịch đảo của a là –a Trong nhóm nhân, phần tử trung hoà

là 1 và phần tử nghịch đảo của a la a -1

<G, > được gọi là nhóm abel nếu a b=b a với mọi a, b thuộc G

Nếu <G, > là nhóm hữu hạn thì số phần tử của <G, > được gọi là bậc của G và ký

hiệu là |G|

Bậc của phần tử a G là số nguyên dương nhỏ nhất n thỏa mãn a n = 1 Ở đây,

trong nhóm nhân a n được hiểu là a.a a (n lần), còn trong nhóm cộng là a+a+ +a (n lần) Trong nhóm nhân với mọi phần tử thuộc nhóm thì n luôn tồn tại

Nếu a G có bậc m thì H = {a k | k Z } là nhóm con của G và có bậc m Nếu G

có một phần tử a có bậc n = |G| thì G = {a k | k Z} và G được gọi là một nhóm cylic,

a được gọi là phần tử sinh của G

Ví dụ, tập hợp Z n = {0, 1, 2,…, n - 1} là một nhóm cylic bậc n với toán tử cộng modulo n 2.2.1.2 Vành

Định nghĩa: Tập hợp R được gọi là vành nếu trên đó có hai phép toán hai ngôi

mà ta ký hiệu là "+" (phép cộng) và "." (phép nhân) thỏa mãn các điều kiện sau:

1 R là một nhóm giao hoán đối với phép cộng, nghĩa là:

- Phép cộng có tính kết hợp: x y z, , R: (x y) z x (y z)

- Phép cộng có phần tử trung hòa, nghĩa là: 0 R, x R: 0 x x 0 x

- Mọi phần tử của R có phần tử đối: x x x, ' : x' x' x 0

- Phép cộng có tính giao hoán, nghĩa là: x y, R x: y y x

2 Phép nhân có tính phân phối với phép cộng, nghĩa là:

, , : x(y z)

x y z R x y x z

3 Phép nhân có tính kết hợp, nghĩa là x y z, , R: (x.y).z x y z.( )

4 Phép nhân có phần tử đơn vị, nghĩa là: 1 R, x R:1 x x 1 x

2.2.2 Bài toán logarit rời rạc

Trang 29

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Định nghĩa: giả sử G là một nhóm cyclic hữu hạn có n phần tử Chúng ta ký hiệu

phép toán của G theo kiểu nhân Giả sử b là một phần tử sinh của G; khi đó mọi phần

tử g G có thể viết dưới dạng g = b k với một số nguyên k nào đó Hơn nữa, hai số

nguyên có cùng tính chất đó với g là đồng dư theo modulo n

Ta định nghĩa một hàm: log : b G Z (trong đó Zn ký hiệu cho vành các số n

nguyên modulo n) theo g là lớp các số nguyên k modulo n Hàm này là một đồng cấu nhóm, được gọi là logarit rời rạc theo cơ số b

Công thức đổi cơ số giống như logarith thông thường: Nếu c là một phần tử sinh

khác của G, thì: log ( )c g log ( ).log ( )c b b g

Cho p là một số nguyên tố Xét nhóm nhân các số nguyên modulo p:

*

{1,2, p}

p

Nếu ta tính luỹ thừa bậc k của một số trong nhóm rồi rút gọn theo modulo p thì ta được một số trong nhóm đó Quá trình này được gọi là luỹ thừa rời rạc modulo p Chẳng hạn với p=17, lấy a=3, k=4 ta có: 4

Lôgarit rời rạc là phép tính ngược lại, biết: 3k 13(mod17) hãy tìm k

Hiện nay, chưa có thuật toán hiệu quả nào để tính logarit rời rạc tổng quát logb g

Có nhiều thuật toán phức tạp, thường sinh ra từ những thuật toán tương tự cho bài toán phân tích thừa số nguyên Chúng chạy nhanh hơn các thuật toán thô sơ, nhưng vẫn còn chậm hơn so với thời gian đa thức

Logarit rời rạc là bài toán khó (chưa biết một thuật toán hiệu quả nào), trong khi bài toán ngược luỹ thừa rời rạc lại không khó (có thể sử dụng thuật toán bình phương

và nhân) Tình trạng này giống như tình hình giữa bài toán thừa số nguyên và phép nhân các số nguyên Chính vì vậy, chúng đều có thể dùng để xây dựng cấu trúc cho một hệ mật mã

Người ta thường chọn nhóm G trong mật mã logarit rời rạc là nhóm cyclic (Zp)×; chẳng hạn như mật mã ElGamal, Trao đổi khoá Diffie-Hellman, và Chữ ký số Elgamal

Ngoài ra còn có mật mã sử dụng lôgarit rời rạc trong nhóm con cyclic của các đường elliptic trên trường hữu hạn; gọi là mật mã đường cong elliptic

2.3 Mã hóa

2.3.1 Mã hóa dữ liệu

Trang 30

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Mã hóa dữ liệu là sử dụng một phương pháp biến đổi dữ liệu từ dạng bình thường sang một dạng khác, mà một người không có thẩm quyền, không có phương tiện giải

mã thì không thể đọc hiểu được Giải mã dữ liệu là quá trình ngược lại, là sử dụng một phương pháp biến đổi dữ liệu đã được mã hóa về dạng thông tin ban đầu

- Mã hóa: Quá trình chuyển đổi dữ liệu gốc thành dữ liệu được mã hóa sao cho người khác không thể đọc hiểu được

- Giải mã: Là quá trình ngược lại của mã hóa, biến đổi dữ liệu đã được mã hóa thành dạng gốc ban đầu

- Bản mã: Tệp dữ liệu đã được mã hóa

Một hệ thống mã hóa bao gồm các thành phần sau:

- PlainText : Bản tin sẽ được mã hóa hay bản tin gốc

- CipherText : Bản tin đã được mã hóa hay bản tin mã

- Thuật toán mã hóa và giải mã :

Encryption : quá trình chuyển bản tin gốc sang dạng mật mã

Decryption : quá trình giải bản tin dạng mật mã trở về bản tin gốc

Cách chọn khóa : giá trị toán học dùng để thực hiện mã hóa

Nhiều phương pháp mã hóa đã được đưa ra dựa trên những giải thuật toán phức tạp, để tạo khó khăn cho những ai đó muốn phá mật mã mà không cần được

ai trao chìa khóa Nói tạo khó khăn là vì trên lý thuyết ta không thể nói việc tìm chìa khóa là vô phương Nhưng nếu trở ngại đủ lớn để làm nản lòng kẻ gian thì đã

là một mức độ an toàn tốt

Quá trình mã hóa và giải mã có thể được minh họa theo sơ đồ sau :

Trang 31

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Trang 32

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

2.3.2 Phân loại

2.3.2.1 Mã hóa bằng khóa bí mật

Các hệ thống mã hóa với khóa bí mật còn được gọi là mã hóa bằng khóa riêng,

mã hóa đối xứng sử dụng duy nhất một khóa cho cả quá trình mã hóa lẫn quá trình giải mã

Có hai loại thuật toán mã hóa bí mật :

- Stream Algorithms/Stream Ciphers : các thuật toán hoạt động trên văn bản bình thường theo từng bit một

- Block Algorithms/Block Ciphers : các thuật toán hoạt động trên văn bản theo các khối (32 bit, 64 bit, 128 bit, )

- Một số thuật toán đang được sử dụng rộng rãi hiện nay : DES, DES, RC5, RC6, Rijndael

Triple-Quá trình mã hóa và giải mã bằng cách sử dụng khóa bí mật được minh họa như Hình 2.4

Trang 33

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Trang 34

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

2.3.2.2 Mã hóa bằng khóa công khai

-Quá trình truyền

dữ liệu

Khóa công khai, chỉ

dùng để mã hóa (có

thể cho mọi người

được giữ bí mật)

Quá trình

mã hóa

Quá trình giải mã

Mã hóa bằng khóa công khai còn gọi là mã hóa bất đối xứng hay mã hóa bằng khóa chung Sự khác biệt cơ bản giữa một hệ thống mã hóa bằng khóa bí mật với hệ thống

mã hóa bằng khóa công khai là hệ thống mã hóa khóa công khai dùng hai khóa khác nhau để mã hóa và giải mã Do đó, một bộ mã công khai sẽ bao gồm hai khóa: một khóa dành cho người mã hóa thường được công khai, và khóa còn lại dùng cho người giải mã thường được giữ bí mật Như vậy, hệ thống mã hóa với khóa công khai cần có một quá trình sinh ra hai khóa để mã hóa và giải mã thông điệp Các khóa này được xem như là một đôi :

Public-key (khóa công khai): được phép công khai mà không phải chịu rủi ro về an toàn Khóa này được dùng để mã hóa thông điệp

Private-key (khóa bí mật): không được để lộ Mỗi thông điệp được mã hóa bằng public-key chỉ có thể giải mã bằng một khóa mật thích hợp

Một số thuật toán mã hóa công khai phổ biến : RSA, Diffie-Hellman Exchange Algorithm (dùng cho việc phân phối và trao đổi khóa)

Key-Quá trình mã hóa và giải mã bằng cách sử dụng khóa công khai được minh họa như hình sau :

Trang 35

Số hóa bởi Trung tâm Học liệu http://www.lrc-tnu.edu.vn/

Ngày đăng: 21/12/2014, 16:35

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[7] Taher ElGamal. "A Public-Key Cryptosystem and a Signature Schem Based on Discrete Logarithms". IEEE Transactions on Information Theory 31 (4): 469–472, 1984 Sách, tạp chí
Tiêu đề: A Public-Key Cryptosystem and a Signature Schem Based on Discrete Logarithms
[8] W. Diffie and M. E. Hellman, "New Directions in Cryptography," IEEE Trans. on Info. Theory, Vol. IT-22, Nov. 1976, pp. 644-654 (Invited Paper) Sách, tạp chí
Tiêu đề: New Directions in Cryptography
[1] Trịnh Nhật Tiến, Đặng Thu Hiền, Trương Thị Thu Hiền, Lương Việt Nguyên, Mã hóa đồng cấu và ứng dụng, Tạp chí Khoa học ĐHQGHN, Khoa học Tự nhiên và Công nghệ 26 (2010) 44-48 Khác
[2] Phan Đình Diệu, Giáo trình lý thuyết mật mã và an toàn thông tin, Nhà xuất bản Đại học Quốc gia Hà Nội, 1999.Tiếng Anh Khác
[3] D. Chaum, Untraceable Electronic Mail, Return Addresses, and Digital Pseudonyms, Communications of the ACM 24(2), 1981, pp. 84-88 Khác
[4] D. Chaum, Blind Signatures for Untraceable Payments, CRYPTO '82, Plenum Press, 1982,199{203 Khác
[5] J. Benaloh and D. Tuinstra. Receipt-free secret-ballot elections. In STOC ’94, pages 544–553, 1994 Khác
[6] S. Goldwasser, S. Micali and C. Rackoff. The knowledge complexity of interactive proof systems. In STOC ’85, pages 291-304 Khác
[9] R. Rivest, A. Shamir, L. Adleman. A Method for Obtaining Digital Signatures and Public-Key Cryptosystems. Communications of the ACM, Vol. 21 (2), pp.120–126. 1978 Khác

HÌNH ẢNH LIÊN QUAN

Hình 2.1  Mã hoá với khoá mã và khoá giải giống nhau  2.1.6.  Phân loại hệ mật mã - nghiên cứu kết hợp sơ đồ chia sẻ bí mật shamir và hệ mã hóa elgamal, ứng dụng trong bỏ phiếu điện tử
Hình 2.1 Mã hoá với khoá mã và khoá giải giống nhau 2.1.6. Phân loại hệ mật mã (Trang 26)
Hình 2.2  Quy trình mã hóa dữ liệu - nghiên cứu kết hợp sơ đồ chia sẻ bí mật shamir và hệ mã hóa elgamal, ứng dụng trong bỏ phiếu điện tử
Hình 2.2 Quy trình mã hóa dữ liệu (Trang 30)
Hình 2.3  Sơ đồ mã hóa và giải mã - nghiên cứu kết hợp sơ đồ chia sẻ bí mật shamir và hệ mã hóa elgamal, ứng dụng trong bỏ phiếu điện tử
Hình 2.3 Sơ đồ mã hóa và giải mã (Trang 31)
Hình 2.5  Sơ đồ mã hóa và giải mã bằng khóa công khai - nghiên cứu kết hợp sơ đồ chia sẻ bí mật shamir và hệ mã hóa elgamal, ứng dụng trong bỏ phiếu điện tử
Hình 2.5 Sơ đồ mã hóa và giải mã bằng khóa công khai (Trang 34)
Bảng 2.1  Các ưu khuyết điểm của hệ thống khóa bí mật (khóa đối xứng) - nghiên cứu kết hợp sơ đồ chia sẻ bí mật shamir và hệ mã hóa elgamal, ứng dụng trong bỏ phiếu điện tử
Bảng 2.1 Các ưu khuyết điểm của hệ thống khóa bí mật (khóa đối xứng) (Trang 36)
Sơ đồ của hệ mã công khai đƣợc cho ở hình 3.1 - nghiên cứu kết hợp sơ đồ chia sẻ bí mật shamir và hệ mã hóa elgamal, ứng dụng trong bỏ phiếu điện tử
Sơ đồ c ủa hệ mã công khai đƣợc cho ở hình 3.1 (Trang 38)
Bảng 3.1  Một số ví dụ về mã hóa và giải mã : - nghiên cứu kết hợp sơ đồ chia sẻ bí mật shamir và hệ mã hóa elgamal, ứng dụng trong bỏ phiếu điện tử
Bảng 3.1 Một số ví dụ về mã hóa và giải mã : (Trang 40)
Hình 3.2  Sơ đồ bỏ phiếu đồng ý/ không đồng ý  Cử tri mã hóa lá phiếu - nghiên cứu kết hợp sơ đồ chia sẻ bí mật shamir và hệ mã hóa elgamal, ứng dụng trong bỏ phiếu điện tử
Hình 3.2 Sơ đồ bỏ phiếu đồng ý/ không đồng ý Cử tri mã hóa lá phiếu (Trang 47)
Hình 3.3  Sơ đồ bỏ phiếu chọn L trong K - nghiên cứu kết hợp sơ đồ chia sẻ bí mật shamir và hệ mã hóa elgamal, ứng dụng trong bỏ phiếu điện tử
Hình 3.3 Sơ đồ bỏ phiếu chọn L trong K (Trang 50)
Hình 3.4  Sơ đồ tổ chức Văn phòng UBND Tỉnh Tuyên Quang - nghiên cứu kết hợp sơ đồ chia sẻ bí mật shamir và hệ mã hóa elgamal, ứng dụng trong bỏ phiếu điện tử
Hình 3.4 Sơ đồ tổ chức Văn phòng UBND Tỉnh Tuyên Quang (Trang 53)
Hình 3.6  Mẫu danh sách cử tri - nghiên cứu kết hợp sơ đồ chia sẻ bí mật shamir và hệ mã hóa elgamal, ứng dụng trong bỏ phiếu điện tử
Hình 3.6 Mẫu danh sách cử tri (Trang 58)
Bảng 3.3  Các file chính để minh họa Bài toán bỏ phiếu “chọn L trong K” - nghiên cứu kết hợp sơ đồ chia sẻ bí mật shamir và hệ mã hóa elgamal, ứng dụng trong bỏ phiếu điện tử
Bảng 3.3 Các file chính để minh họa Bài toán bỏ phiếu “chọn L trong K” (Trang 62)
Hình 3.7  Giao diện chương trình chính  3.5.3.2.   Chương trình bỏ phiếu có/không đồng ý - nghiên cứu kết hợp sơ đồ chia sẻ bí mật shamir và hệ mã hóa elgamal, ứng dụng trong bỏ phiếu điện tử
Hình 3.7 Giao diện chương trình chính 3.5.3.2. Chương trình bỏ phiếu có/không đồng ý (Trang 63)
Hình 3.8  Giao diện chương trình bỏ phiếu có/không đồng ý - nghiên cứu kết hợp sơ đồ chia sẻ bí mật shamir và hệ mã hóa elgamal, ứng dụng trong bỏ phiếu điện tử
Hình 3.8 Giao diện chương trình bỏ phiếu có/không đồng ý (Trang 64)
Hình 3.9  Giao diện chương trình bỏ phiếu chọn L trong K - nghiên cứu kết hợp sơ đồ chia sẻ bí mật shamir và hệ mã hóa elgamal, ứng dụng trong bỏ phiếu điện tử
Hình 3.9 Giao diện chương trình bỏ phiếu chọn L trong K (Trang 66)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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