Đăng ký Đăng nhập
Trang chủ Xây dựng hệ thống bỏ phiếu điện tử sử dụng mật mã...

Tài liệu Xây dựng hệ thống bỏ phiếu điện tử sử dụng mật mã

.PDF
72
5
103

Mô tả:

.. ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHIỆP BÙI VĂN TÚ XÂY DỰNG HỆ THỐNG BỎ PHIẾU ĐIỆN TỬ SỬ DỤNG MẬT MÃ LUẬN VĂN THẠC SĨ KỸ THUẬT VIỄN THÔNG THÁI NGUYÊN - 2020 Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHIỆP BÙI VĂN TÚ XÂY DỰNG HỆ THỐNG BỎ PHIẾU ĐIỆN TỬ SỬ DỤNG MẬT MÃ Chuyên ngành: Kỹ thuật Viễn thông Mã số: 8.52.02.08 LUẬN VĂN THẠC SĨ KỸ THUẬT VIỄN THÔNG KHOA CHUYÊN MÔN NGƯỜI HƯỚNG DẪN KHOA HỌC TS. NGUYỄN PHƯƠNG HUY THÁI NGUYÊN - 2020 Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn LỜI CAM ĐOAN Tên tôi là: Bùi Văn Tú Sinh ngày: 14/7/1986 Học viên lớp cao học CHK20KTVT - Trường Đại học Kỹ thuật Công nghiệp - Đại học Thái Nguyên. Hiện đang công tác tại: Sở Công Thương Bắc Giang. Xin cam đoan: Đề tài “Xây dựng hệ thống bỏ phiếu điện tử sử dụng mật mã” do Thầy giáo TS. Nguyễn Phương Huy 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 2020 Tác giả luận văn Bùi Văn Tú Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn LỜI CẢM ƠN Sau một thời gian 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. Nguyễn Phương Huy, luận văn với đề tài “Xây dựng hệ thống bỏ phiếu điện tử sử dụng mật mã” đã 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. Nguyễn Phương Huy đã tận tình chỉ dẫn, giúp đỡ tôi hoàn thành luận văn này. Trường Đại học Kỹ thuật công nghiệp và đặc biệt là các thầy, cô trong Khoa Điện tử đã 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. Thái Nguyên, ngày tháng năm 2020 Tác giả luận văn Bùi Văn Tú Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn MỤC LỤC LỜI CAM ĐOAN ........................................................................................................ i LỜI CẢM ƠN .............................................................................................................ii DANH MỤC CÁC HÌNH ẢNH ................................................................................. v DANH MỤC BẢNG BIỂU ....................................................................................... vi MỞ ĐẦU ..................................................................................................................... 1 CHƯƠNG 1: BỎ PHIẾU ĐIỆN TỬ ........................................................................... 5 1.1. Tổng quan về bỏ phiếu điện tử. ....................................................................... 5 1.1.1. Khái niệm về bỏ phiếu. .............................................................................. 6 1.1.2. Khái niệm bỏ phiếu điện tử. ...................................................................... 7 1.1.3. Ưu điểm của bỏ phiếu điện tử. .................................................................. 7 1.1.4. Hai bài toán bỏ phiếu điện tử thường gặp. ................................................ 7 1.1.5. Yêu cầu chung của bỏ phiếu điện tử. ........................................................ 8 1.2. Ứng dụng mật mã trong bỏ phiếu điện tử ....................................................... 8 1.2.1. Tổng quan về mật mã ................................................................................ 8 1.2.1.1. Giới thiệu ................................................................................................ 8 1.2.1.2. Vai trò của hệ mật mã ............................................................................. 9 1.2.1.3. Phân loại hệ mật mã .............................................................................. 10 1.2.1.4. Tiêu chuẩn đánh giá hệ mật mã ............................................................ 11 1.2.2. Một số ưu điểm khi ứng dụng mật mã trong bỏ phiếu điện tử ............... 12 1.2.2.1. Kiểm tra tổng các phiếu bầu thay vì kiểm tra từng lá phiếu ............... 12 1.2.2.2. Mật mã giúp đạt tính phân quyền trong kiểm phiếu ............................ 15 1.2.2.3. Mã hóa xác suất giúp giữ vững tính ẩn danh của phiếu bầu ............... 16 1.2.2.4. Chứng minh tương tác để chống việc bán phiếu bầu .......................... 16 1.3. Kiến trúc chung của một hệ thống bỏ phiếu điện tử. .................................... 18 1.3.1. Các thành phần trong hệ thống bỏ phiếu điện tử. ................................... 18 1.3.2. Các giai đoạn bỏ phiếu điện tử. ............................................................... 19 1.4. Giới thiệu một số hệ thống bỏ phiếu điện tử trong thực tế. .......................... 19 1.5. Kết luận chương 1 ......................................................................................... 20 Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn CHƯƠNG 2: ỨNG DỤNG MỘT SỐ GIẢI PHÁP TRONG XÂY DỰNG HỆ THỐNG BỎ PHIẾU ĐIỆN TỬ ................................................................................ 22 2.1. Cơ sở toán học của mật mã. ......................................................................... 22 2.1.1. Nhóm, vành và không gian Zp. ............................................................... 22 2.1.2. Bài toán logarit rời rạc. ............................................................................ 23 2.1.3. Mã hóa và giải mã dữ liệu. ...................................................................... 24 2.1.4. Mã hóa và giải mã bằng khóa bí mật và công khai. ............................... 26 2.2. Sử dụng hệ mã hóa khóa công khai Elgamal trong bỏ phiếu điện tử.......... 28 2.2.1. Tổng quan về hệ mật mã khóa công khai................................................ 28 2.2.2. Tính đồng cấu của hệ mã hóa Elgamal. .................................................. 29 2.2.3. Ứng dụng hệ mã hóa Elgamal cho bỏ phiếu đồng ý /không đồng ý. ..... 29 2.3. Sử dụng sơ đồ chia sẻ bí mật Shamir kết hợp với hệ mã hóa Elgamal trong bỏ phiếu điện tử. .................................................................................................. 31 2.3.1. Kỹ thuật Chia sẻ khóa bí mật (Secret Sharing). ...................................... 31 2.3.2. Các sơ đồ chia sẻ bí mật. ......................................................................... 32 2.3.3.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. ................................................................................37 2.4. Kết luận chương 2 ......................................................................................... 41 CHƯƠNG 3: MỘT SỐ KẾT QUẢ ĐẠT ĐƯỢC .................................................... 42 3.1. Mô phỏng hệ thống bỏ phiếu điện tử cho hai bài toán cơ bản. ..................... 42 3.2. Thiết kế và thi công hệ thống bỏ phiếu điện tử cho bài toán bỏ phiếu Có/Không 50 3.2.1. Giới thiệu ................................................................................................. 50 3.2.2. Sơ đồ khối của hệ thống .......................................................................... 51 3.2.3. Thiết kế chi tiết khối chức năng .............................................................. 53 3.2.4. Một số kết quả đạt được. ......................................................................... 59 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ........................................................... 62 TÀI LIỆU THAM KHẢO ................................................................................... 64 Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn DANH MỤC CÁC HÌNH ẢNH Hình 1.1. Mã hoá với khoá mã và khoá giải giống nhau .........................................10 Hình 2.1. Mã hóa dữ liệu. ........................................................................................24 Hình 2.2. Quy và giải trình mã hóa mã. ...................................................................25 Hình 2.3. Sơ đồ mã hóa và giải mã bằng khóa riêng. ..............................................26 Hình 2.4. Sơ đồ mã hóa và giải mã bằng khóa công khai. .......................................27 Hình 2.5. Hệ mật mã công khai................................................................................28 Hình 2.6. Sơ đồ bỏ phiếu đồng ý/ không đồng ý. ...................................................30 Hình 2.7. Sơ đồ bỏ phiếu chọn L trong K. ...............................................................39 Hình 3.1. Giao diện chương trình chính...................................................................45 Hình 3.2. Giao diện chương trình bỏ phiếu có/không đồng ý..................................46 Hình 3.3. Giao diện chương trình bỏ phiếu chọn L trong K ....................................48 Hình 3.4. Sơ đồ khối của hệ thống. ..........................................................................51 Hình 3.5. Lưu đồ giải thuật tạo nội dung phiếu bầu trên Android ...........................53 Hình 3.6. Màn hình File Activity_login.xml (Design). ...........................................54 Hình 3.7. Màn hình Activity_main.xml (Design). ...................................................54 Hình 3.8. Module sim A7 .........................................................................................55 Hình 3.9. Module arduino Uno. ...............................................................................56 Hình 3.10. Web hiển thị kết quả bỏ phiếu. ..............................................................58 Hình 3.11. Màn hình login. ......................................................................................59 Hình 3.12. Màn hình chính hệ thống bỏ phiếu điện tử. ...........................................60 Hình 3.13. Kết quả bỏ phiếu hiển thị trên trang web. ..............................................60 Hình 3.14. Danh sách niêm yết trên trang web. .......................................................61 Hình 3.15. Kết quả bỏ phiếu hiển thị trên trang web (tiếp). ....................................61 Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN http://lrc.tnu.edu.vn DANH MỤC BẢNG BIỂU Bảng 2.1. Một số ví dụ về mã hóa và giải mã. ..........................................................28 Bảng 3.1. Các file chính để minh họa Bài toán bỏ phiếu có/không đồng ý ..............44 Bảng 3.2. Các file chính để minh họa Bài toán bỏ phiếu “chọn L trong K” ............44 Bảng 3.3. Thông số kỹ thuật của Arduino nano v3.0................................................56 Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN http://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 đó, nhờ sự phát triển của công nghệ viễn thông, bằng 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 Internet 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 1 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à Ấ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, bình chọn hoa hậu, ca sỹ..) song chưa thể triển khai vào các cuộc bầu cử quan trọng 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 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. Nguyễn Phương Huy, học viên lựa chọn đề tài luận văn tốt nghiệp “Xây dựng hệ thống bỏ phiếu điện tử sử dụng mật mã” với mong muốn áp dụng các kiến thức đã được học, xây dựng một hệ 2 thống bỏ phiếu điện tử với phần cứng dựa trên vi điều khiển và phần mềm dựa trên các thuật toán mật mã. 2. Mục tiêu, đối tượng và phạm vi nghiên cứu của đề tài a. Mục tiêu 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à: Xây dựng hệ thống bỏ phiếu điện tử giải quyết hai bài toán 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. b. Đối tượng Như vậy, các đối tượng nghiên cứu của đề tài là: Kiến trúc phần cứng của hệ thống bỏ phiếu điện tử, các thuật toán mã hóa/giải mã lá phiếu trong phần mềm của hệ thống để đảm bảo tính kiểm tra được và tính tự do trong lựa chọn. c. Phạm vi nghiên cứu - Về kiến trúc hệ thống bỏ phiếu, luận văn sử dụng phần cứng là vi điều khiển Adruino UNO để thu thập và tính toán các lá phiếu (đã được mã hóa) qua máy di động và website. - Với bài toán bỏ phiếu có/không , học viê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 ban kiểm phiếu. Vì vậy, học viên dự kiến nghiên cứu 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 3 - 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ề xây dựng hệ nhúng sử dụng Adruino, xây dựng ứng dụng giao tiếp với vi điều khiển qua di động, Internet; 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. Xây dựng mô hình thử nghiệm bỏ phiếu điện tử. - 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 dự kiế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: “Ứng dụng một số giải pháp trong xây dựng hệ thống bỏ phiếu điện tử” Từ những bài toán, vấn đề đã đặt ra trong phần mở đầu và chương 1, chương 2 sẽ trình bày 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 trong bỏ phiếu điện tử. 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 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”. - Chương 3: “Một số kết quả đạt được” Lựa chọn một ứng dụng bỏ phiếu điện tử cụ thể; Trình bày cụ thể cách thức thiết kế và thi công phần cứng và thực hiện các thuật toán mã mật trong phần mềm của hệ thống bỏ phiếu điện tử; Đánh giá các kết quả đạt được. 4 CHƯƠNG 1 BỎ PHIẾU ĐIỆN TỬ 1.1. Tổng quan về bỏ phiếu điện tử. Trong những năm gần đây, cả thế giới đang chứng kiến một cuộc cách mạng mạnh mẽ, toàn diện và sâu sắc đã làm thay đổi các hoạt động trong mọi lĩnh vực kinh tế, văn hoá, chính trị, xã hội, thay đổi cả phương thức làm việc, học tập, giải trí, giao tiếp và quan hệ xã hội. Một trong những nội dung cơ bản của cuộc cách mạng này là ứng dụng công nghệ cao, hiện đại với công nghệ thông tin là công cụ có ý nghĩa quyết định, mang tính đột phá, góp phần rút ngắn quá trình công nghiệp hoá, hiện đại hóa. Trong đó mạng máy tính đã giúp cho con người tiếp cận, trao đổi những thông tin mới nhất một cách nhanh chóng, thuận tiện và nó đã mang lại cho con người những lợi ích không thể phủ nhận được. Một xã hội dân chủ có nhiều việc phải cần đến "bỏ phiếu", người ta "bỏ phiếu" để thăm dò các kế hoạch, chính sách nào đó hoặc để bầu cử các chức vụ, chức danh... Hiện nay có 2 loại bỏ phiếu chính là bỏ phiếu trực tiếp tại hòm phiếu bằng các lá phiếu in trên giấy ("bỏ phiếu truyền thống") và bỏ phiếu từ xa bằng các lá phiếu "số hoá" tạm gọi là lá phiếu điện tử từ các máy tính cá nhân trên mạng, điện thoại di động... ("bỏ phiếu điện tử" hoặc "bầu cử điện tử "). Ngày nay, khoảng thời gian của mỗi cá nhân không nhiều, mặt khác một người có thể làm việc ở nhiều nơi, như vậy người ta khó có thể thực hiện được nhiều cuộc bỏ phiếu theo phương pháp truyền thống. Rõ ràng "bỏ phiếu từ xa" đang và sẽ là nhu cầu cấp thiết, vấn đề này chỉ còn là thời gian và kỹ thuật cho phép. Cũng như bỏ phiếu truyền thống, bỏ phiếu thăm dò từ xa phải đảm bảo yêu cầu "bí mật", "toàn vẹn" và "xác thực" của lá phiếu. Kỹ thuật bỏ phiếu thăm dò từ xa dựa trên những lý luận rất sâu sắc về an toàn và bảo mật dữ liệu trên đường truyền tin. Mặt khác lá phiếu phải bảo đảm hợp pháp, lá phiếu đúng là của người được phép bầu cử, mỗi cử tri chỉ được gửi một lá phiếu. Yêu cầu "bí mật" của lá phiếu là ngoài cử tri, chỉ có ban kiểm phiếu mới được biết nội dung của lá phiếu nhưng họ không biết chủ nhân của nó. 5 Yêu cầu "toàn vẹn" của lá phiếu trên đường truyền tin, nội dung lá phiếu không thể bị thay đổi, tất cả các lá phiếu đều được chuyển đến hòm phiếu an toàn, đúng thời hạn và được kiểm phiếu đầy đủ. Yêu cầu "xác thực" của lá phiếu gửi tới hòm phiếu phải hợp lệ, đúng là của người có quyền bỏ phiếu, cử tri có thể nhận ra lá phiếu của họ. Trải qua nhiều thế kỷ, đã có nhiều công nghệ bỏ phiếu khác nhau với những phương pháp và các hình thức khác nhau. Từ những hòn đá và mảnh vỡ bỏ vào trong lọ thời Hy lạp được thay thế bằng lá phiếu bỏ vào trong hộp gắn niêm phong. Ngày nay, công nghệ mới phát triển việc bỏ phiếu, có thể tự động hoá. Việc bỏ phiếu tự động cần phải được bảo mật và an toàn như những cuộc bầu cử truyền thống (đặc biệt là bí mật riêng của lá phiếu). Phòng bỏ phiếu "cơ học" và những phiếu đục lỗ sẽ được thay thế bằng những lá phiếu "điện tử" để có thể kiểm phiếu nhanh hơn. Bỏ phiếu điện tử trực tuyến qua Internet có lợi hơn rất nhiều. Các cử tri có thể bỏ phiếu từ bất cứ nơi đâu. Việc bỏ phiếu thuận tiện làm gia tăng số lượng cử tri. Nhanh chóng, rẻ và tiện lợi. Quá trình bỏ phiếu có thể tác động lớn trên những xã hội dân chủ. Ví dụ những cuộc bầu cử cho phép công dân có thể bỏ phiếu vào bất cứ thời gian nào. Những phương pháp bỏ phiếu hiệu quả có thể phân loại bằng 2 cách tiếp cận chính sơ đồ sử dụng chữ ký mù và sơ đồ sử dụng mã hoá đồng cấu. 1.1.1. Khái niệm về bỏ phiếu. Bầu cử là một quá trình đưa ra quyết định của người dân để chọn ra một cá nhân nắm giữ các chức vụ thuộc chính quyền. Đây là cơ chế thông thường mà các nền dân chủ hiện dùng để phân bổ chức vụ trong bộ máy lập pháp, thỉnh thoảng ở bộ máy hành pháp, tư pháp, và ở chính quyền địa phương. Bầu cử là một trong những chế định quan trọng trong ngành Luật Hiến pháp, là cơ sở pháp lý cho việc hình thành ra các cơ quan đại diện cho quyền lực của Nhà nước và cách phổ biến nhất là bỏ phiếu. Bỏ phiếu gồm: bỏ phiếu truyền thống và bỏ phiếu điện tử. 6 1.1.2. Khái niệm bỏ phiếu điện tử. Bỏ phiếu điện tử là phương pháp bỏ phiếu từ xa qua mạng thông qua máy tính, thiết bị di động... Bỏ phiếu từ xa luôn đảm bảo được tính bí mật, toàn vẹn và xác thực của lá phiếu. Kết quả bỏ phiếu được gửi ngay về chương trình kiểm phiếu tự động, kết quả bỏ phiếu được chương trình tự động tổng hợp theo thời gian thực và tất cả các thành viên đều có thể xem được báo cáo tổng hợp này. Mỗi cử tri chỉ được bỏ phiếu một lần, mọi người đều có thể kiểm tra tính đúng đắn của cuộc bỏ phiếu, cử tri không thể chỉ ra mình đã bỏ phiếu cho ai để tránh cơ hội bán phiếu bầu. 1.1.3. Ưu điểm của bỏ phiếu điện tử. - Cho phép bỏ phiếu từ xa. - Kiểm phiếu và thống kê kết quả nhanh. - Loại bỏ các sai sót có thể có do thao tác bằng tay. - Bỏ phiếu điện tử sẽ đem đến sự thuận tiện, đáp ứng tốt hơn yêu cầu công việc. - Tạo điều kiện để các thành viên Hội đồng tham gia bỏ phiếu mọi lúc mọi nơi kể cả khi đang đi công tác nước ngoài 1.1.4. Hai bài toán bỏ phiếu điện tử thường gặp. Hiện nay có 2 loại bỏ phiếu chính: - Bỏ phiếu trực tiếp 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. 7 1.1.5. Yêu cầu chung của bỏ phiếu điện tử. 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.2. Ứng dụng mật mã trong bỏ phiếu điện tử 1.2.1. Tổng quan về mật mã 1.2.1.1. Giới thiệu 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ã. Để 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). 8 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. 1.2.1.2. 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. 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õ. 9 - 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ã eK: P → C và một quy tắc giải mã tương ứng dK ∈ D. Mỗi eK: P → C và dK: C → P là những hàm mà: dK (eK(x))=x với mọi bản rõ x ∈ P. Hình 1.1. Mã hoá với khoá mã và khoá giải giống nhau 1.2.1.3. Phân loại hệ mật mã Có nhiều cách để phân loại hệ mật mã. Dựa vào cách truyền khóa có thể phân các hệ mật mã thành hai loại: - Hệ mật đối xứng (hay còn gọi là mật mã khóa bí mật): là những hệ mật dùng chung một khoá cả trong quá trình mã hoá dữ liệu và giải mã dữ liệu. Do đó khoá phải được giữ bí mật tuyệt đối. - 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. 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 10 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). 1.2.1.4. 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 eK và bản rõ P thì chúng ta dễ dàng tính được eK(P) = C. Ngược lại khi cho dK và bản mã C thì dễ dàng tính được dK(M)=P. Khi không biết dK 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ã. 11 1.2.2. Một số ưu điểm khi ứng dụng mật mã trong bỏ phiếu điện tử 1.2.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ỏ 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. 12
- Xem thêm -

Tài liệu liên quan