Sơ đồ chia sẽ chữ kí bí mật trong hệ mật mã và ứng dụng cho bài toán bỏ phiếu điện tử

83 445 0
Sơ đồ chia sẽ chữ kí bí mật trong hệ mật mã và ứng dụng cho bài toán bỏ phiếu điện tử

Đ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

ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN &TRUYỀN THÔNG PHẠM AN HƯNG SƠ ĐỒ CHIA SẺ CHỮ KÍ BÍ MẬT TRONG HỆ MẬT MÃ VÀ ỨNG DỤNG CHO BÀI TOÁN BỎ PHIẾU ĐIỆN TỬ LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH THÁI NGUYÊN - 2016 ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG PHẠM AN HƯNG SƠ ĐỒ CHIA SẺ CHỮ KÍ BÍ MẬT TRONG HỆ MẬT MÃ VÀ ỨNG DỤNG CHO BÀI TOÁN BỎ PHIẾU ĐIỆN TỬ Chuyên ngành: KHOA HỌC MÁY TÍNH Mã số: 60 48 01 01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH NGƯỜI HƯỚNG DẪN KHOA HỌC: TS VŨ VINH QUANG THÁI NGUYÊN - 2016 i LỜI CAM ĐOAN Tên là: Phạm An Hưng Sinh ngày: 14/10/1979 Học viên lớp cao học CK13A - Trường Đại học Công nghệ thông tin Truyền thông - Đại học Thái Nguyên Hiện công tác tại: Trường THPT Hoàng Văn Thụ - Lục Yên - Yên Bái Xin cam đoan: Đề tài “Sơ đồ chia sẻ chữ kí bí mật hệ mật mã ứng dụng cho toán bỏ phiếu điện tử” Thầy giáo, NGƯT - TS Vũ Vinh Quang hướng dẫn công trình nghiên cứu riêng Tất tài liệu tham khảo có nguồn gốc, xuất xứ rõ ràng Tác giả xin cam đoan tất nội dung luận văn nội dung đề cương yêu cầu thầy giáo hướng dẫn Nếu sai hoàn toàn chịu trách nhiệm trước hội đồng khoa học trước pháp luật Thái Nguyên, ngày 15 tháng năm 2016 TÁC GIẢ LUẬN VĂN Phạm An Hưng ii MỤC LỤC LỜI CAM ĐOAN i MỤC LỤC ii DANH MỤC HÌNH VẼ v MỞ ĐẦU Chương MỘT SỐ KIẾN THỨC CƠ BẢN VỀ AN TOÀN THÔNG TIN 1.1 Tổng quan an toàn bảo mật thông tin 1.1.1 An toàn bảo mật thông tin 1.1.2 Các chiến lược an toàn hệ thống 1.1.3 Các mức bảo vệ mạng 1.1.4 An toàn thông tin mật mã 1.1.5 Vai trò hệ mật mã 1.1.6 Phân loại hệ mật mã 10 1.1.7 Tiêu chuẩn đánh giá hệ mật mã 11 1.2 Cơ sở toán học hệ mật mã 12 1.2.1 Ước số - Bội số 12 1.2.2 Số nguyên tố 12 1.3 Mã hóa 16 1.3.1 Mã hóa liệu 16 1.3.2 Ưu khuyết điểm hai phương pháp 20 1.3.3 Chữ ký số 21 Chương HỆ MẬT MÃ KHÓA CÔNG KHAI VÀ SƠ ĐỒ CHIA SẺ BÍ MẬT 24 2.1 Khái niệm chung 24 2.2 Một số hệ mã công khai thông dụng 25 2.2.1 Hệ mã RSA (R.Rivest, A.Shamir, L.Adleman) 25 2.2.2 Hệ mã Rabin 29 2.2.3 Hệ mã Elgamal 31 2.2.4 Hệ mã MHK (Merkle -Hellman Knapsack) 33 iii 2.2.5 Hệ mật mã McEliece 34 2.3 Một số vấn đề chia sẻ khóa bí mật 36 2.3.1 Kỹ thuật Chia sẻ khóa bí mật (Secret Sharing) 36 2.3.2 Các sơ đồ chia sẻ bí mật 37 Chương ỨNG DỤNG CHIA SẺ KHÓA BÍ MẬT TRONG BÀI TOÁN BỎ PHIẾU ĐIỆN TỬ 43 3.1 Một số toán an toàn thông tin “Bỏ phiếu điện tử” 43 3.1.1 Bài toán xác thực cử tri 43 3.1.2 Bài toán ẩn danh phiếu 44 3.1.3 Bài toán phòng tránh liên kết thành viên ban bầu cử cử tri 45 3.2 Giải toán chia sẻ khóa kí phiếu bầu cử 46 3.2.1 Chia sẻ khóa 46 3.2.2 Khôi phục khóa 46 3.3 Giải toán chia sẻ nội dung phiếu bầu cử 47 3.4 Tổ chức hệ thống bỏ phiếu từ xa 48 3.4.1 Mô hình tổng thể hệ thống bầu cử điện tử 48 3.4.2 Các thành phần ban tổ chức bỏ phiếu: 48 3.4.3 Các thành phần kỹ thuật hệ thống bỏ phiếu: 48 3.4.4 Các thành phần hệ thống bỏ phiếu điện tử 49 3.5 Quy trình bỏ phiếu điện tử 49 3.5.1 Các giai đoạn bỏ phiếu điện tử 50 3.5.2 Ứng dụng hệ mật mã toán bỏ phiếu điện tử điện tử 52 3.5.3 Kiểm tra tổng phiếu bầu thay kiểm tra phiếu 52 3.5.4 Kĩ thuật phân quyền kiểm phiếu 54 3.5.5 Kĩ thuật giúp giữ vững tính ẩn danh phiếu bầu 55 3.5.6 Một số vấn đề để chống việc bán phiếu bầu 55 3.6 Ứng dụng hệ mật mã Elgamal sơ đồ chia sẻ bí mật Shamir bỏ phiếu điện tử 57 3.6.1 Bài toán bỏ phiếu Đồng ý / Không đồng ý 57 iv 3.6.2 Bài toán bỏ phiếu chọn L K 59 3.7 Khảo sát thực trạng Văn phòng UBND Tỉnh Yên Bái 61 3.7.1 Giới thiệu chung Văn phòng UNND Tỉnh Yên Bái 61 3.7.2 Thực trạng bỏ phiếu/bầu cử VP UNND Tỉnh 64 3.7.3 Một số mẫu biểu liên quan 64 3.7.4 Xây dựng chương trình mô bỏ phiếu điện tử 66 Kết luận chương 74 KẾT LUẬN 75 TÀI LIỆU THAM KHẢO 76 v DANH MỤC HÌNH VẼ Hình 1: Tường lửa Hình 2: Quy trình mã hóa liệu 16 Hình 3: Sơ đồ mã hóa giải mã 17 Hình 4: Sơ đồ mã hóa giải mã khóa riêng 18 Hình 5: Sơ đồ mã hóa giải mã khóa công khai 19 Hình 7: Quy trình bỏ phiếu điện tử 50 Hình 8: Sơ đồ giai đoạn đăng kí bỏ phiếu 50 Hình 9: Sơ đồ giai đoạn bỏ phiếu 51 Hình 10: Sơ đồ giai đoạn kiểm phiếu 51 Hình 11: Sơ đồ tổ chức chung Văn phòng UBND tỉnh 61 Hình 13: Mẫu phiếu bầu cử 65 Hình 14: Mẫu danh sách cử tri 65 Hình 15: Giao diện chương trình 69 Hình 16: Giao diện chương trình bỏ phiếu có/không đồng ý 69 Hình 17: Giao diện chương trình bỏ phiếu chọn L K 71 MỞ ĐẦU Hiện Internet trở nên phổ biến toàn giới, thông qua mạng Internet người trao đổi thông tin với cách nhanh chóng thuận tiện Những tổ chức có hoạt động môi trường Internet/Intranet phải đối diện với vấn đề làm để bảo vệ liệu quan trọng, ngăn chặn hình thức công, truy xuất liệu bất hợp pháp từ bên (Intranet) lẫn bên (Internet) Khi người muốn trao đổi thông tin với người hay tổ chức thông qua mạng máy tính yêu cầu quan trọng để đảm bảo thông tin không bị sai lệch bị lộ can thiệp người thứ ba Trước yêu cầu cần thiết đó, lý thuyết mật mã thông tin đời nhằm đảm bảo tính an toàn liệu nơi lưu trữ liệu truyền mạng Vấn đề chia sẻ bí mật được nghiên cứu từ năm 70 kỷ trước Ý tưởng chia sẻ bí mật dựa nguyên tắc đơn giản không tin vào Để đảm bảo an toàn thông tin ta trao cho người nắm giữ mà phải chia nhỏ thành mảnh trao cho người mảnh, cho người với số mảnh có tìm thông tin bí mật Việc phân chia mảnh phải theo sơ đồ chia sẻ bí mật định, sau khôi phục lại thông tin bí mật ban đầu Được gợi ý giáo viên hướng dẫn nhận thấy tính thiết thực vấn đề, chọn đề tài: “Sơ đồ chia sẻ chữ kí bí mật hệ mật mã ứng dụng cho toán bỏ phiếu điện tử” với mong muốn áp dụng kiến thức học, xây dựng thử nghiệm mô hình bỏ phiếu điện tử văn phòng ủy ban nhân dân tỉnh Yên Bái Nội dung luận văn bao gồm chương: Chương 1: “Các kiến thức hệ mật mã” Chương giới thiệu tổng quan an toàn bảo mật thông tin, sở toán học hệ mật mã Khái niệm chữ kí số, số hệ mật mã sơ đồ chữ kí số, hàm băm ứng dụng Chương 2: “Hệ mật mã công khai sơ đồ chia sẻ chữ kí bí mật” Từ toán, vấn đề đặt phần mở đầu chương 1, chương trình bày tổng quan hệ mật mã khóa công khai, mã khóa bí mật phương pháp mã hóa để giải toán đặt Chương 3: “Ứng dụng kĩ thuật chia sẻ khóa bí mật toán bỏ phiếu điện tử”, chương sâu vào trình bày phân tích hệ mã hóa công khai Elgamal với tính chất đồng cấu hệ mật này, tiếp đến sơ đồ chia sẻ bí mật theo ngưỡng Shamir Từ ứng dụng hệ mật Elgamal toán “bỏ phiếu Có/ không”; Phối hợp hệ mật mã Elgamal sơ đồ chia sẻ bí mật Shamir để giải toán “bỏ phiếu chọn L K” Phần cuối chương khảo sát toán bầu cử UBND Tỉnh Yên Bái, từ làm để xây dựng chương trình mô cho hai toán “bỏ phiếu Có/ không” “bỏ phiếu chọn L K” Chương MỘT SỐ KIẾN THỨC CƠ BẢN VỀ AN TOÀN THÔNG TIN Khi nhu cầu trao đổi thông tin liệu ngày lớn đa dạng, tiến điện tử - viễn thông công nghệ thông tin không ngừng phát triển ứng dụng để nâng cao chất lượng lưu lượng truyền tin quan niệm ý tưởng biện pháp bảo vệ thông tin liệu đổi Bảo vệ an toàn thông tin liệu chủ đề rộng, có liên quan đến nhiều lĩnh vực thực tế có nhiều phương pháp thực để bảo vệ an toàn thông tin liệu Trong chương trình bày số kiến thức an toan thông tin, Các kiến thức tham khảo từ [2], [3], [9] 1.1 Tổng quan an toàn bảo mật thông tin 1.1.1 An toàn bảo mật thông tin Khi nhu cầu trao đổi thông tin liệu ngày lớn đa dạng, tiến điện tử - viễn thông công nghệ thông tin không ngừng phát triển ứng dụng để nâng cao chất lượng lưu lượng truyền tin quan niệm ý tưởng biện pháp bảo vệ thông tin liệu đổi Bảo vệ an toàn thông tin liệu chủ đề rộng, có liên quan đến nhiều lĩnh vực thực tế có nhiều phương pháp thực để bảo vệ an toàn thông tin liệu Các phương pháp bảo vệ an toàn thông tin liệu quy tụ vào ba nhóm sau: - Bảo vệ an toàn thông tin biện pháp hành - Bảo vệ an toàn thông tin biện pháp kỹ thuật (phần cứng) - Bảo vệ an toàn thông tin biện pháp thuật toán (phần mềm) 62 - Văn phòng UBND tỉnh có tư cách pháp nhân, có dấu tài khoản riêng; chịu đạo, quản lý tổ chức, biên chế công tác Ủy ban nhân dân tỉnh;  Nhiệm vụ quyền hạn - Tham mưu tổng hợp, giúp Ủy ban nhân dân tỉnh - Tham mưu tổng hợp, giúp Chủ tịch Ủy ban nhân dân tỉnh - Bảo đảm thông tin phục vụ công tác lãnh đạo, đạo, điều hành Ủy ban nhân dân, Chủ tịch Ủy ban nhân dân tỉnh - Bảo đảm điều kiện vật chất, kỹ thuật cho hoạt động Ủy ban nhân dân tỉnh, Chủ tịch Ủy ban nhân dân tỉnh - Xây dựng, ban hành văn thuộc thẩm quyền Văn phòng Ủy ban nhân dân tỉnh theo quy định pháp luật - Tổ chức việc phát hành quản lý văn Ủy ban nhân dân tỉnh, Chủ tịch Ủy ban nhân dân tỉnh - Tổng kết, hướng dẫn chuyên môn, nghiệp vụ công tác văn phòng Văn phòng Sở, Ban, ngành - Chủ trì, phối hợp với Sở Nội vụ quan, đơn vị liên quan trình UBND tỉnh hướng dẫn Ủy ban nhân dân huyện, thành phố quy định cụ thể chức năng, nhiệm vụ, quyền hạn Văn phòng Hội đồng nhân dân Ủy ban nhân dân huyện, thành phố - Tổ chức nghiên cứu, thực ứng dụng đề tài nghiên cứu khoa học - Quản lý tổ chức máy, biên chế; thực chế độ tiền lương chế độ, sách đãi ngộ, khen thưởng, kỷ luật; đào tạo, bồi dưỡng chuyên môn, nghiệp vụ cán bộ, công chức, viên chức thuộc Văn phòng Ủy ban nhân dân tỉnh - Quản lý tài chính, tài sản giao theo quy định pháp luật phân cấp Ủy ban nhân dân tỉnh - Thực nhiệm vụ, quyền hạn khác Ủy ban nhân dân Chủ tịch Ủy ban nhân dân tỉnh giao theo quy định pháp luật 63  Cơ cấu tổ chức biên chế - Lãnh đạo Văn phòng Ủy ban nhân dân tỉnh + Văn phòng Ủy ban nhân dân tỉnh có Chánh Văn phòng không 03 Phó Chánh Văn phòng + Chánh Văn phòng Ủy ban nhân dân tỉnh người đứng đầu, chịu trách nhiệm trước Ủy ban nhân dân tỉnh, Chủ tịch Ủy ban nhân dân tỉnh trước pháp luật toàn hoạt động Văn phòng; đồng thời chủ tài khoản quan Văn phòng Ủy ban nhân dân tỉnh + Phó Chánh Văn phòng Ủy ban nhân dân tỉnh Chánh Văn phòng phân công theo dõi khối công việc chịu trách nhiệm trước Chánh Văn phòng, trước pháp luật lĩnh vực công việc phân công phụ trách + Việc bổ nhiệm, miễn nhiệm, khen thưởng, kỷ luật thực chế độ, sách Chánh Văn phòng, Phó Chánh Văn phòng Ủy ban nhân dân tỉnh theo quy định pháp luật phân cấp quản lý cán Ban Thường vụ Tỉnh ủy, Ủy ban nhân dân tỉnh - Các tổ chức tham mưu, tổng hợp chuyên môn, nghiệp vụ (gọi tắt Phòng chuyên môn, nghiệp vụ) thuộc Văn phòng UBND tỉnh gồm: + Phòng HC - Tổ chức + Phòng Kinh tế ngành + Phòng Quản trị - Tài vụ + Phòng Văn xã + Phòng Tiếp công dân + Phòng Nội + Phòng Tổng hợp + Phòng Kiểm soát thủ tục + Phòng Kinh tế Tổng hợp hành - Các đơn vị nghiệp + Trung tâm Tin học Công báo + Nhà khách - Biên chế: + Biên chế công chức biên chế tổ chức tham mưu, tổng hợp chuyên môn, nghiệp vụ thực chức quản lý nhà nước, Chánh Văn phòng UBND tỉnh phân bổ tổng biên chế công chức UBND tỉnh giao 64 + Biên chế nghiệp biên chế thuộc đơn vị nghiệp, Chánh Văn phòng UBND tỉnh định phân bổ tổng tiêu biên chế UBND tỉnh giao, sở xác định vị trí việc làm theo chức năng, nhiệm vụ đơn vị 3.7.2 Thực trạng bỏ phiếu/bầu cử VP UNND Tỉnh Qua khảo sát thực tế Văn phòng UBND tỉnh, có hoạt động sử dụng hình thức bỏ phiếu/ bầu cử: - Hội nghị lấy phiếu tín nhiệm bổ nhiệm chức danh - Bầu cử hội đồng nhân dân cấp tỉnh, đại biểu quốc hội - Bầu cử ban chấp hành công đoàn, chi đoàn, … 3.7.3 Một số mẫu biểu liên quan  Thủ tục qui trình bầu cử hội đồng nhân dân cấp tỉnh Hình 12: Nguyên tắc, thể lệ trình tự bầu cử 65  Mẫu phiếu bầu Hình 13: Mẫu phiếu bầu cử  Mẫu danh sách cử tri Hình 14: Mẫu danh sách cử tri 66 3.7.4 Xây dựng chương trình mô bỏ phiếu điện tử 3.7.4.1 Bỏ phiếu dạng có/không Qua khảo sát thực tế VP UBND Tỉnh Yên Bái, hầu hết hội nghị, họp, buổi báo cáo tổng kết… cần lấy ý kiến đánh giá đại biểu vấn đề thông qua hình thức biểu giơ tay (đồng ý / không đồng ý) Tuy nhiên với phát triển khoa học kỹ thuật, nhu cầu trao đổi thông tin nhanh chóng tiết kiệm hình thức họp trực tuyến áp dụng vào họp giao ban hành tuần/tháng/quý lãnh đạo Tỉnh với Huyện, Thành Phố, có họp trực tuyến lãnh đạo Tỉnh với Bộ ban ngành khác Trong hình thức họp trực tuyến, cần lấy biểu vấn đề biểu giơ tay không hiệu thiếu tính khách quan (do camera đặt cố định, không bao quát hết thành viên tham gia họp), bên cạnh yêu cầu muốn ẩn danh ý kiến biểu đại biểu (đại biểu không muốn ban kiểm phiếu biết biểu đồng ý hay không đồng ý, ban kiểm phiếu biết tổng số phiếu nội dung phiếu) Từ yêu cầu thực tế đó, đưa phương án giải dựa tính chất đồng cầu hệ mã Elgamal Theo phương pháp nội dung phiếu mã hóa gửi ban kiểm phiếu, ban kiểm phiếu nội dung phiếu xác minh nguồn gốc phiếu, ban kiểm phiếu tính kết bỏ phiếu từ phiếu mã hóa Nhóm thủ tục cho Bài toán bỏ phiếu “có/không đồng ý" Gồm số file với mục đích cụ thể mô tả bảng sau: 67 Tên File Mục đích bophieuck.fig Tạo giao diện GUI Matlab thuận tiện cho việc sử dụng bophieuck.m Tiến hành thủ tục người dùng thao tác giao diện GUI chương trình bỏ phiếu có/không đồng ý phieubauck.m Tạo ngẫu nhiên n phiếu hợp lệbầu đại diện cho lựa chọn n cử tri guiphieuck.m Mã hóa phiếu bầu theo thuật toán mã hóa Elgamal kiemphieuck.m Giải mã phiếu bầu đưa kết theo dựa tính chất đồng cấu thuật toán mã hóa Elgamal Bảng 3: Các file để minh họa Bài toán bỏ phiếu có/không đồng ý 3.7.4.2 Bỏ phiếu dạng “chọn L K” Trong bỏ phiếu bầu cử hội đồng nhân dân cấp tỉnh khóa XVIII, có 168 ứng cử viên chọn 24 tổ bầu cử, tổ bầu cử có ứng cử viên chọn đại biểu hội đồng nhân dân: N1, N2,… N5 Ban kiểm phiếu gồm có người gồm đại người điện tổ bầu cử cử tri chọn ngẫu nhiên bất kỳ: A1, A2, A3, A4 A5 Theo luật bầu cử thể lệ bầu cử kết bầu cử công nhận có 2/3 số cử tri bầu cử, nhiên lúc cử tri có điều kiện đến trực tiếp để bầu cử có không cử tri đến tận nơi để bầu cử Do vậy, để giải vấn đề này, sử dụng phương án bầu cử điện tử Các cử tri gửi phiếu tới ban kiểm phiếu thông qua mạng Internet Đây bỏ phiếu chọn người, giả sử cử tri không tin vào độ trung thực thành viên ban kiểm phiếu, để giải vấn đề họ chia phiếu thành mảnh tin gửi cho người kiểm phiếu mảnh Ban kiểm phiếu biết nội dung phiếu có đủ thành viên ban kiểm phiếu ghép mảnh phiếu lại với Nội 68 dung phiếu chia thành nhiều mảnh tin, mảnh lại mã hóa mảnh mã trước gửi ban kiểm phiếu Từ yêu cầu toán qua nghiên cứu tìm hiểu, sử dụng sơ đồ chia sẻ bí mật Shamir để chia nhỏ phiếu, phối hợp với tính chất đồng cấu hệ mật mã Elgamal để khôi phục lại phiếu ban đầu có đủ mảnh mã Nhóm thủ tục cho Bài toán bỏ phiếu “chọn L K" Gồm số file với mục đích cụ thể mô tả bảng sau: Tên File Mục đích bophieuL_K.fig Tạo giao diện GUI Matlab thuận tiện cho việc sử dụng bophieuL_K.m khoitaolk.m manglk.m taophieulk.m Tiến hành thủ tục người dùng thao tác giao diện GUI chương trình bỏ phiếu “chọn L K” Tạo khóa bí mật công khai theo thuật toán mã hóa Elgamal Tạo ngẫu nhiên phiếu bầu hợp lệ (gồm L bít đại diện cho lựa chọn đồng ý L ứng viên tương ứng với L K vị trí) Tạo ngẫu nhiên n phiếu bầu hợp lệ đại diện cho lựa chọn n cử tri Mã hóa phiếu bầu theo thuật toán mã hóa Elgamal Ứng với guiphieulk.m phiếu, tính toán N mảnh phiếu chia sẻ bí mật Shamir để gửi cho N thành viên ban kiểm phiếu Các thành viên ban kiểm phiếu ghép mảnh phiếu theo thuật ketqualk.m toán chia sẻ bí mật Shamir, giải mã phiếu bầu đưa kết theo dựa tính chất đồng cấu thuật toán mã hóa Elgamal Sắp xếp hiển thị thứ tự trúng cử L K ứng viên Bảng 4: Các file để minh họa Bài toán bỏ phiếu “chọn L K” Xuất phát từ phân tích trên, luận văn xây dựng phần mềm giải cho vấn đề bỏ phiếu điện tử từ xa phục vụ cho tỉnh Yên Bái, ngôn ngữ sử dụng lập trình Matlab vesion 8.0.604 (R2013a) Cấu trúc chương trình 69 sau: Giao diện chính, Mô đun giải toán bỏ phiếu có/không đồng ý, Mô đun giải toán bỏ phiếu chọn L K Dưới số kết thử nghiệm chương trình: A Giao diện chương trình Hình 15: Giao diện chương trình B Mô đun giải toán bỏ phiếu có/không đồng ý Trên giao diện chương trình chính, click chuột vào nút Bỏ phiếu dạng Có/Không ta giao diện đây: Hình 16: Giao diện chương trình bỏ phiếu có/không đồng ý 70 - Bước Khởi tạo khóa bí mật công khai Nhập giá trị phần tử sinh g khóa bí mật a Click vào nút khởi tạo, khóa công khai h tính theo công thức h=ga Ví dụ chọn g=3, a=7, ta h=2187 - Bước Nhập giá trị số cử tri n click vào nút bỏ phiếu, chương trình phieubauck.m gọi cho ta kết bầu cử n phiếu với bit đại diện cho đồng ý bit đại diện cho lựa chọn không đồng ý Cụ thể ví dụ trên, chọn n=10, kết ngẫu nhiên tạo sau: V= [1 1 1 0 1] - Bước Gửi phiếu Click vào nút gửi phiếu , chương trình guiphieuck.m tạo n giá trị k ngẫu nhiên ứng với n cử tri Từ giá trị ngẫu nhiên tiến hành mã hóa lựa chọn cử tri theo thuật toán mã hóa Elgamal Ứng với lựa chọn T cử tri (0 1), cặp mã (x,y)=(gk, hk*gT) gửi đến ban kiểm phiếu: Phiếu = (3^0.0042345,2187^0.0042345*3^1) (3^0.00090823,2187^0.00090823*3^0) (3^0.0026647,2187^0.0026647*3^1) (3^0.0015366,2187^0.0015366*3^1) (3^0.0028101,2187^0.0028101*3^1) (3^0.0044009,2187^0.0044009*3^1) (3^0.0052714,2187^0.0052714*3^0) (3^0.0045742,2187^0.0045742*3^0) (3^0.0087537,2187^0.0087537*3^1) (3^0.0051805,2187^0.0051805*3^1) 71 Phiếu = (1.0047,3.0993) (1.001,1.007) (1.0029,3.0621) (1.0017,3.0357) (1.0031,3.0655) (1.0048,3.1033) (1.0058,1.0414) (1.005,1.0358) (1.0097,3.2089) (1.0057,3.1219) - Bước Kiểm phiếu Click vào nút kiểm tra , thay giải mã cặp phiếu chương trình kiemphieuck.m dựa tính chất đồng cấu thuật toán mã hóa Elgamal để tính giá trị (X,Y) cặp (x,y) nhận được, sau giải mã giá trị m=gkq (với kq tổng số phiếu đồng ý) Với ví dụ ta có: X= 1.0453 Y= 2982.3671 suy ra: m= 2187=37 Kết giải mã cử tri đồng ý cử tri không đồng ý - Nhận xét: Chương trình thử nghiệm chương trình guiphieuck.m tạo n giá trị k ngẫu nhiên nằm [0,10] Kết phép tính X, Y cuối bị tràn số Vì áp dụng trường hợp số cử tri lớn (vài ngàn người trở lên) Do đó, tác giả đề xuất giải pháp khắc phục tạo giá trị k ngẫu nhiên [0,1] C Mô đun giải toán bỏ phiếu dạng chọn L K Trên giao diện chương trình chính, click nút Bỏ phiếu dạng chọn L/K ta giao diện đây: Hình 17: Giao diện chương trình bỏ phiếu chọn L K 72 - Bước Khởi tạo khóa bí mật công khai Từ giao diện chương trình, ta nhập giá trị modul p, phần tử sinh g, số ứng viên K, số ứng viên lựa chọn L số thành viên ban kiểm phiếu N Sau click vào nút khởi tạo, khóa bí mật thành viên Zi tạo Tương ứng khóa công khai hi tính theo công thức hi=gzi Ví dụ chọn p=17, g=3, K=7, L=5, N=5 Zi=[5 3 4] ta hi=[243 27 27 81] - Bước Bỏ phiếu Nhập giá trị số cử tri n click vào nút bỏ phiếu, chương trình taophieulk.m gọi cho ta kết bầu cử n phiếu hợp lệ (có L bit K-L bit 0) với bit đại diện cho đồng ý bit đại diện cho lựa chọn không đồng ý Cụ thể ví dụ trên, chọn n=7, kết ngẫu nhiên tạo sau: V= [1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1] - Bước Gửi phiếu Click vào nút gửi phiếu , chương trình guiphieulk.m tạo n phiếu bầu hợp lệ ngẫu nhiên tương ứng với n cử tri Từ giá trị ngẫu nhiên tiến hành mã hóa lựa chọn cử tri theo thuật toán mã hóa Elgamal, dùng thuật toán chia sẻ bí mật Shamir tạo N mảnh ứng với phiếu để gửi cho N thành viên ban kiểm phiếu Trong ví dụ trên, mảnh phiếu tạo là: S= 329 329 335 335 335 335 371 2225 2225 2231 2231 2231 2231 2267 10587 10587 10593 10593 10593 10593 10629 36155 36155 36161 36161 36161 36161 36197 98117 98117 98123 98123 98123 98123 98159 73 - Bước Kiểm phiếu Click vào nút kiểm phiếu , thay giải mã cặp phiếu chương trình ketqualk.m dựa tính chất đồng cấu thuật toán mã hóa Elgamal thuật toán chia sẻ bí mật Shamir để ghép mảnh phiếu giải mã số lượng cử tri lựa chọn ứng viên Tiếp đó, xếp thứ tự ứng viên theo thứ tự số phiếu giảm dần để có sở chọn L K ứng viên trúng tuyển Với ví dụ ta có mảnh phiếu ghép lại là: Sghép= [87 87 93 93 93 93 129] Sau giải mã thu kết quả: [UV(1) UV(2) UV(3) … UV(7) ]= [6 7 2] Vậy kết bầu cử là: Kq= (UV[2],7)(UV[3],7)(UV[1],6)(UV[6],6)(UV[5],4)(UV[4],3)(UV[7],2) Theo kết trên, K=7 ứng viên, số ứng viên trúng tuyển L=5 (ứng viên thứ 2, 3, 1, 6, 5) Ứng viên thứ 4, bị loại 74 Kết luận chương Như giới thiệu phần trước, mục tiêu luận văn xây dựng thử nghiệm chương trình bỏ phiếu điện tử UBND tỉnh Yên Bái Để đảm bảo hai yếu tố cốt lõi vấn đề bỏ phiếu là: tính kiểm tra tính tự lựa chọn, luận văn sử dụng hệ mật mã Elgamal kết hợp với kỹ thuật chia sẻ khóa bí mật Shamir Sử dụng hệ mật mã Elgamal với tính chất đồng cấu cho phép kiểm tra kết tổng phiếu thay cho việc kiểm tra đơn lẻ toán bầu cử có không Kỹ thuật chia sẻ khóa bí mật Shamir tạo phân quyền ban kiểm phiếu để chống gian lận toán bỏ phiếu chọn L K Chương trình thử nghiệm cho thấy kết với lý thuyết mang lại ưu vượt trội mặt thời gian khắc phục “lỗi chủ quan người” so với bỏ phiếu thông thường, đặc biệt số lượng cử tri lớn 75 KẾT LUẬN Sau thời gian nghiên cứu tìm hiểu, luận văn đạt số kết sau: - Tìm hiểu tổng quan mã hóa kiến thức liên quan - Trình bày tính chất đặc biệt sơ đồ chia sẻ bí mật Shamir tính chất đồng cấu hệ mã hoá Elgamal , đặc biệt tính chất sinh phối hợp hai hệ mật mã - Chỉ ứng dụng tính chất bỏ phiếu hay thăm dò từ xa mạng công khai (bỏ phiếu điện tử) - Khảo sát thực trạng bỏ phiếu Văn phòng UBND Tỉnh Yên Bái, từ phát biểu toán đưa phương án giải toán - Xây dựng chương trình mô cho toán bỏ phiếu dạng đồng ý/ không đồng ý toán chọn L K Hướng phát triển luận văn xây dựng mô hình ứng dụng nhỏ minh họa nhiều sơ đồ chữ kí số mô hình trình bỏ phiếu từ xa nghiên cứu phát triển chương trình Internet để mở rộng liên kết 76 TÀI LIỆU THAM KHẢO Tiếng việt: [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 ứng dụng, Tạp chí Khoa học ĐHQGHN, Khoa học Tự nhiên Công nghệ 26 (2010) 44-48 [2] Phan Đình Diệu, Giáo trình lý thuyết mật mã an toàn thông tin, Nhà xuất Đại học Quốc gia Hà Nội, 1999 [3] Phạm Huy Điển, Hà Huy Khoái, Mã hoá thông tin sở toán học & ứng dụng, Viện toán học, 2004 [4] Trịnh Nhật Tiến, Trương Thị Thu Hiền, Nguyễn Đình Nam, Một số kỹ thuật bỏ phiếu điện tử, Kỷ yếu hội thảo khoa học Quốc gia Công nghệ thông tin, Nhà xuất Khoa học kỹ thuật, 2005 [5] Vũ Vinh Quang, Giáo trình lý thuyết thông tin, nhà xuất khoa học kỹ thuật, năm 2010 Tiếng Anh: [6] Josh Cohen Benaloh, Secret Sharing Homomorphisms: Keeping Shares of a Secret Secret (Extended Abstract) [7] Zuzana Rjaskova, Electronic Voting Schemes, 2002 [8] “CyberVote, Deliverable D6: Report on Review of Cryptographic Protocols and Security Techniques for Electronic Voting” Version 1.0, European Commission Research Contract IST-1999-20338, 55 pp., 28 January 2002 Available at: http://www.eucybervote.org/TUE-WP2-D6V1v1.0.pdf [9] D Chaum Untraceable electronic mail, return addresses, and digital pseudonyms Communications of the ACM, 24(2):84–88, 1981 [10] J D Cohen and M J Fischer A robust and verifiable cryptographically secure election scheme In FOCS ’85, pages 372–382, 1985 [...]... 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 yêu cầu về độ an toàn 1.1.6 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 mã đối xứng (hay còn gọi là mật mã khóa bí mật) : là những hệ mật mã dùng chung một khoá cả trong quá trình mã hoá dữ liệu và giải mã dữ liệu... Quá trình mã hóa và giải mã có thể được minh họa theo sơ đồ sau : Hình 3: Sơ đồ mã hóa và giải mã Phân loại 1.3.1.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... là số nguyên đủ lớn Hệ mã RSA là hệ mã dựa vào bài toán logarithm rời rạc và bài toán phân tích một số nguyên thành tích các thừa số nguyên tố, là hệ mã được sử dụng rộng rãi nhất Nó cung cấp cả sự bí mật và chữ ký điện tử, và tính bảo mật của nó là cơ sở cho độ khó trong vấn đề tìm thừa số nguyên tố Thuật toán Tạo khoá: Mỗi thực thể tạo một khoá công khai và một khoá riêng tương ứng Thực thể A cần... công khai nhưng khoá dùng để giải mã phải giữ bí mật 11 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... phối khoá bí mật Mục đích chính của mã khoá công khai là cung cấp sự bí mật và sự tin cậy Sơ đồ mã khoá công khai về cơ bản là chậm hơn so với thuật toán mã hoá đối xứng Vì lý do này, mã khoá công khai được sử dụng phổ biến nhất trên thực tế cho việc truyền tải khoá, sau đó được sử dụng để mã hoá khối dữ liệu bằng 25 thuật toán đối xứng, và những ứng dụng khác bao gồm sự toàn vẹn dữ liệu và sự xác... Một số hệ mã công khai thông dụng 2.2.1 Hệ mã RSA (R.Rivest, A.Shamir, L.Adleman) Khái niệm hệ mật mã RSA đã được ra đời năm 1976 bởi các tác giả R.Rivets, A.Shamir, và L.Adleman Hệ mã hoá này dựa trên cơ sở của hai bài toán: 26 + Bài toán Logarithm rời rạc (Discrete logarith) + Bài toán phân tích thành thừa số nguyên tố Sơ đồ mã hoá RSA là sơ đồ mã hoá khối, đoạn tin được mã hoá từng khối với mỗi khối... 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 mã tốt thì thời gian mã và giải mã nhanh 12  Phân phối khóa: Một hệ mật mã phụ thuộc vào khóa, khóa... đó 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 mã 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 có thể suy được từ khoá kia Khoá dùng để mã hoá có thể công khai... quan trọng của mã khóa công khai - Mã khóa công khai có tính chất bất đối xứng, sử dụng 2 khóa riêng biệt tương phản với mã hóa qui ước có tính đối xứng là chỉ sự dụng 1 khóa Việc sử dụng 2 khóa có tầm quan trọng sâu sắc trong lĩnh vực cần tính bí mật, phân bố khóa và sự chứng thực quyền Một khóa cho mã hóa (khóa công khai) và một khóa khác (có quan hệ với khóa trên) cho giải mã (khóa bí mật, khóa riêng... tin mã Quá trình giải mã - Bản tin gốc Hình 4: Sơ đồ mã hóa và giải mã bằng khóa riêng 1.3.1.2 Mã hóa bằng khóa công khai 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ã

Ngày đăng: 19/09/2016, 18:06

Từ khóa liên quan

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

Tài liệu liên quan