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ử

92 172 0

Đ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 92
Dung lượng 2,56 MB

Nội dung

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ậ

Trang 1

ĐẠ HỌC THÁ 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

I I

Số hóa bởi Trung tâm Học liệu h t t p : / / www l r c - tn u e d u v n /

Trang 2

ĐẠ 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

Mã số: 60 48 01

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

NGƯỜI HƯỚNG DẪN KHOA HỌC

Trang 3

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 dungtrong đề 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áchnhiệ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

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ànthà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ànthành luận văn này

TÁC GIẢ LUẬN VĂN

Trang 5

MỤC LỤC

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

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

Số hóa bởi Trung tâm Học liệu h t t p : / / www l r c - tn u e d u v n /

Trang 7

tn

u e d u v n /

Số hóa bởi Trung tâm Học

liệu

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

u e d u v n /

Số hóa bởi Trung tâm Học

liệu

5

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

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ệnmớ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 chobầ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 dokhô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ảntiệ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àngkế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ớtsứ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 choviệ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ácnướ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

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ầuchọ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óngtruyề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ươngthứ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ốngkhá 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ảngcá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ựngcá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ếtvấ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 Namcũ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

h t t p : / / www l r c - tn

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ả trongcuộ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ệckết hợp sơ đồ chia sẻ bí mật có ngưỡng giới hạn Shamir và hệ mã hóa đồng cấuElgamal để 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ểucá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ểubà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ềmMatlab; Đá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 trongquá 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

Trang 13

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”.

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ếuthô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àiliệ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ànhphần, các giai đoạn trong hệ thống bỏ phiếu điện tử Tiếp đó, nội dung chương tậptrung 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ủaphiế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ữngnộ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 14

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 quaInternet, 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ử

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?

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

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ợ

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)

kiểm phiếu hỗ trợ

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

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 15

bỏ phiếu của cử tri.

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 đảmtính toàn vẹn của lá phiếu

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ếtquả

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 haiyê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ầucủ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êucầ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ôngkhai 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à aicũ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 16

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 saokế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ếubầ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ựachọ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, để đảmbả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ầnbiế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ữngngườ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 ,

Trang 17

lá phiếu X sẽ bị mã thành C A ) và bất kể ai không có khóa bí mật sk sẽ không

thể tính được X từ C A Khi đó, nếu cử tri A bầu cho ứng cử viên X thì thay vì công bố

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ôngthường thì cần giải mã lá phiếu của A và do vậy lựa chọn của A không còn là bí mậtvớ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ọncủa A đượ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ệcdù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 18

E ( pk , m2 ) E ( pk , m1 m2 )

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 chotừ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ưởngtrọ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 tronglự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 ẩndanh 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ôngkhai 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ôngkhai 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ếucủ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ênmộ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ínhchấ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 haibản rõ tương ứng: E ( pk , m1 )

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ỏ

Trang 19

phiếu cho ứng cử viên X và Y như sau: mỗi lá phiếu cho X là E( pk,1) và cho Y

E( pk, 0) 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 ,

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 108 , một phiếu bầu cho Z có thể như là mã của 1016 :

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 Z là 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 sk sẽ 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

Trang 20

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ầnthự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ấpquy 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ểmphiế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ảokhi 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ựachọ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ớinhau 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ậpthì 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ôngthể 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ểmphiế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 đượcthực hiện thông qua các hệ mã hóa với ngưỡng (threshold cryptosystems), được xemxé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ôngqua 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êncù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ếtquả 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ộtkhóa công khai thực pk và một khóa bí mật ảo sk tương ứng Tính chất ảo ở chỗ khóa

bí mật sk tồ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 đồngcấ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 21

Hệ mã dùng trong bỏ phiếu không thể là một hệ mã tất định ở đó tương ứng mộtbả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ụngbắ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ậprấ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àntheo 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ó

Trang 22

, 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,

, 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 A sẽ tự dotạ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 , r) Tuy nhiên, khi đó giá

trị

C A là ẩn danh với tất cả mọi người

quan sát nhưng một khi A biết giá trị r thì sẽ có thể chứng minh là mình đã bầu cho

X bằng cách đưa r X cho bất kỳ ai kiểm tra quan hệ C A , r) Có khả năngchứng minh mình đã bầu cho ai sẽ dẫn tới có khả năng bán phiếu bầu củamì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 23

Điểm mấu chốt để ngăn việc bán phiếu bầu là không cho cử tri A toàn quyền tạo

Trang 24

cùng bản rõ X như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 , 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 Asang một bản mã ngẫu nhiên C A , 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 A nhưng A không biết giá trị r và khôngchứng minh cho ai khác biết được rằng C A là bản mã của lựa chọn X và 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àmngẫu nhiên bản mã chứ không biết được nội dung lựa chọn X của cử tri A và 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ònmột trở ngại: làm thế nào để cử tri A biết được là hệ thống đã thực sự làm ngẫu nhiênhó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ếubầ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-knowledgeproof), đượ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 A chí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, A hoàn toàn có thể bị thuyết phục là C A là giá trị

mã của lựa chọn X nhưng bản thân A lạ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, A khô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ươnglai 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 25

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 đolườ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ácphương pháp mật mã thường ứng dụng trong bỏ phiếu điện tử sẽ được trình bày chitiếp trong chương 2

Trang 26

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ênquan 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ôngtin 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áytí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ệuhay đ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áytí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úngmỗ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ậnrằ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ôngthườ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 27

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ácthay đổ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ácthô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ànnộ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ảmbớ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ộtmứ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 đánhgiá 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ầnhà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ấncô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íchhợ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ị truycậ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

Trang 28

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

Trang 29

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 30

- 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 31

Để 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ượclạ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ớpbả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 tinchỉ đượ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 đườngtruyề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ủangườ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ảosao 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ạodanh để 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ạptí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 32

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ácbả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ápvét cạn)

- Đối với mỗi k ứng d ∈ K có một quy tắc mã eK : 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ùngmột khoá khác để giải mã, nghĩa là khoá để mã hoá và giải mã là khác nhau

Trang 33

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ưngkhoá 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 saună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àmhai 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óakhá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:

cao Ưu điểm của mật mã là có thể đánh giá được độ an toàn thông qua độ an toàntí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 xX 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ờ.

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 sovớ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

Trang 34

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

Trang 35

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

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 n h ó m gi a o h o án đối với phép cộng, nghĩa là:

- Phép cộng có tính kết hợp:

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

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

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

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

3 Phép nhân có tính kết hợp, nghĩa là

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

Trang 36

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

Trang 37

Z n

logc (b).

{1,2, p

p

phép toán của G theo kiểu nhân Giả sử b là một phần tử s i nh 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: logb : G (trong đó Zn ký hiệu cho và n h các số

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

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ì: logc ( g ) logb ( g )

Cho p là một số nguyên tố Xét nhóm nhân các số nguyên modulo 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.

Trang 38

81 13(mod13(mod

Chẳng hạn với p=17, lấy a=3, k=4 ta có: 34

Lôgarit rời rạc là phép tính ngược lại, biết: 3k

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 khibà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épnhâ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 chomộ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à ó mnh c y c l i c (Zp)×;chẳng hạn như m ật m ã E l G a m a l , Tr a o đ ổi khoá Di ff i e -Hellman, và Chữ ký số Elg

a m al

Ngoài ra còn có mật mã sử dụng lôgarit rời rạc trong nh ó m con c y c l i c c ủa c ác

đ ư ờng elliptic trên tr ườ ng h ữ u hạn; gọi là m ật m ã đ ư ờng co n g ellip t i c

2.3 Mã hóa

2.3.1 Mã hóa dữ liệu

Trang 39

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ườngsang 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ộtphương pháp biến đổi dữ liệu đã được mã hóa về dạng thông tin ban đầu

Hình 2.2 Quy trình mã hóa dữ liệ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 chongườ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ánphứ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ìmchì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 :

Ngày đăng: 12/02/2019, 22:08

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 onDiscrete 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

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w