Mục tiêu nghiên cứu
Hiểu rõ về bầu cử, các mô hình bầu cử, các quy trình và nguyên tắt của bầu cử
Hiểu rõ về công nghệ blockchain
Áp dụng công nghệ blockchain vào quy trình bầu cử
Thiết kế được mô hình ứng dụng blockchain vào việc bầu cử
Sử dụng nền tảng Blockchain để cài đặt hệ thống
3 ối tƣợng và phạm vi nghiên cứu
- Công nghệ, kỹ thuật, nền tảng xây dựng hệ thống Blockchain
- Bầu cử, mô hình bầu cử và quy trình bầu cử
- Mô hình blockchain cho các quy trình bầu cử
- Xây dựng mô hình ứng dụng kỹ thuật blockchain cho các quy trình bầu cử
- Sử dụng nền tảng blockchain Ethereum network để cài đặt mô hình bầu cử
4 Phươn pháp n hiên cứu Đề tài luận văn được thực hiện nghiên cứu theo quy trình sau:
Nghiên cứu tổng quan: Nghiên cứu về công nghệ blockchain, các kỹ thuật cơ bản và tính chất của Blockchain
Nghiên cứu mô hình Xây dựn c i đặt và thử nghiệm
Nghiên cứu mô hình: Nghiên cứu các mô hình bầu cử và đề xuất mô hình ứng dụng công nghệ blockchain cho bầu cử
Xây dựng cài đặt và thử nghiệm: Xây dựng hệ thống bầu cử và cài đặt lên blockchain network sau đó chạy thử nghiệm hệ thống
5 Ý n hĩa của đề tài Đề xuất được giải pháp ứng dụng công nghệ blockchain vào bầu cử để nâng cao chất lượng bầu cử
Thiết kế và xây dựng được hệ thống bầu cử công khai trên mô hình Blockchain
Các kết quả của luận văn thu được sau khi thực hiện các nội dung nghiên cứu trên được tổng hợp trên bản thảo gồm 3 chương chính như sau:
Chương 1: Nghiên cứu tổng quan về công nghệ Blockchain, bao gồm các nền tảng lý thuyết và kỹ thuật chính Bên cạnh đó, chương này cũng đề cập đến mô hình bầu cử hiện tại đang được áp dụng.
Chươn 2: Mô hình bầu cử ứng dụng công nghệ blockchain
Trong chương này, luận văn phân tích những hạn chế của các mô hình bầu cử hiện tại và đề xuất các giải pháp để khắc phục những khuyết điểm này Bên cạnh đó, chương cũng trình bày ứng dụng công nghệ Blockchain vào mô hình bầu cử nhằm cải thiện những thiếu sót của các phương thức bầu cử truyền thống.
Chươn 3: Xây dựng hệ thống và thử nghiệm
Hệ thống bầu cử công khai sử dụng công nghệ Blockchain được triển khai trên mạng Ethereum, mang đến tính minh bạch và bảo mật cho quá trình bầu cử Các công nghệ tiên tiến được áp dụng trong việc xây dựng hệ thống này giúp đảm bảo tính toàn vẹn và an toàn cho dữ liệu bầu cử Chương này sẽ mô tả chi tiết về cách thức hoạt động của hệ thống bầu cử công khai dựa trên công nghệ Blockchain.
Công nghệ blockchain đang phát triển mạnh mẽ với nhiều ứng dụng tiềm năng trong các lĩnh vực khác nhau Luận văn đã đạt được những kết quả đáng chú ý, chứng minh tính khả thi và hiệu quả của công nghệ này Để tiếp tục khai thác tiềm năng của blockchain, cần định hướng nghiên cứu sâu hơn vào các vấn đề bảo mật, khả năng mở rộng và tích hợp với các công nghệ mới.
1.1 Tổng quan về công nghệ Blockchain
1.1.1 Giới thiệu công nghệ Blockchain
Blockchain là một hệ thống cơ sở dữ liệu phân cấp, lưu trữ thông tin trong các khối liên kết với nhau thông qua mã hóa Mỗi khối chứa thông tin về thời gian khởi tạo, mã thời gian và dữ liệu giao dịch, đồng thời liên kết chặt chẽ với khối trước đó Thiết kế của blockchain giúp ngăn chặn việc thay đổi dữ liệu, đảm bảo rằng một khi thông tin đã được mạng lưới chấp nhận, nó sẽ không thể bị chỉnh sửa.
Blockchain được thiết kế với hệ thống tính toán phân cấp và khả năng chịu lỗi byzantine cao, cho phép đạt được sự đồng thuận phân cấp Điều này làm cho Blockchain trở thành giải pháp lý tưởng để ghi lại các sự kiện, hồ sơ y tế, xử lý giao dịch, công chứng, quản lý danh tính và chứng minh nguồn gốc Việc sử dụng Blockchain có tiềm năng lớn trong việc loại bỏ các hậu quả tiêu cực do dữ liệu bị thay đổi trong thương mại toàn cầu.
Một số trích dẫn đáng chú ý về công nghệ này được liệt kê dưới đây:
Thế hệ đầu tiên của cuộc cách mạng kỹ thuật số đã cung cấp cho chúng ta thông tin qua Internet, trong khi thế hệ thứ hai, nhờ vào công nghệ blockchain, mang đến giá trị của Internet Điều này tạo ra một nền tảng mới, giúp định hình lại thế giới kinh doanh và cải thiện thứ tự công việc của con người.
Blockchain là một cơ sở dữ liệu phân tán toàn cầu, cho phép lưu trữ và quản lý thông tin cùng các tài sản giá trị như danh hiệu, hành vi, danh tính và phiếu bầu trên hàng triệu thiết bị Nó mở ra khả năng di chuyển và bảo vệ dữ liệu một cách an toàn và riêng tư, với sự tin tưởng được xây dựng thông qua sự hợp tác giữa cộng đồng và mã thông minh, thay vì dựa vào các trung gian như chính phủ và ngân hàng.
Blockchain được Satoshi Nakamoto phát minh vào năm 2008 và được triển khai vào năm sau như một phần quan trọng của Bitcoin, hoạt động như một sổ cái cho tất cả các giao dịch Nhờ vào mạng lưới ngang hàng và hệ thống dữ liệu phân cấp, blockchain của Bitcoin được quản lý tự động Sự ra đời của blockchain đã giúp Bitcoin trở thành loại tiền tệ kỹ thuật số đầu tiên giải quyết vấn đề double spending, tức là chi tiêu gian lận khi một lượng tiền được sử dụng hai lần Công nghệ này đã mở ra nguồn cảm hứng cho nhiều ứng dụng khác.
Hàm băm (hash function) là thuật toán tạo ra giá trị băm cho mỗi khối dữ liệu, giúp phân biệt chúng như một khóa Dù có hiện tượng trùng khóa (đụng độ), các nhà phát triển nỗ lực cải thiện thuật toán để giảm thiểu vấn đề này Hàm băm thường được sử dụng trong bảng băm để tối ưu hóa chi phí tính toán khi tìm kiếm khối dữ liệu trong tập hợp, nhờ vào việc so sánh giá trị băm nhanh hơn so với so sánh khối dữ liệu lớn.
Với tính phổ biến của bảng băm, hầu hết các ngôn ngữ lập trình hiện nay đều cung cấp thư viện ứng dụng bảng băm, thường được gọi là thư viện collection Thư viện này bao gồm các cấu trúc dữ liệu như tập hợp, danh sách, bảng, ánh xạ và từ điển Các lập trình viên thường chỉ cần viết hàm băm cho các đối tượng của mình để tích hợp với thư viện bảng băm đã có sẵn.
Một hàm băm tốt phải thỏa mãn các điều kiện sau:
- Các khoá được phân bố đều trong bảng
- Ít xảy ra đụng độ
- Xử lý được các loại khóa có kiểu dữ liệu khác nhau
Một số hàm băm phổ biến:
MD5, được thiết kế bởi Ronald Rivest vào năm 1991 để thay thế hàm băm MD4, đã trở thành tiêu chuẩn vào năm 1992 theo RFC 1321, tạo ra bản tóm tắt kích thước 128 bit (16 byte) Tuy nhiên, từ đầu những năm 2000, MD5 đã trở nên không an toàn trước sức mạnh tính toán của các hệ thống hiện đại Sự phát triển của công nghệ thám mã gần đây cho phép tính toán các va chạm trong MD5 với độ phức tạp 2^21 chỉ trong vài giây, khiến thuật toán này không còn phù hợp cho hầu hết các ứng dụng thực tế.
SHA-1, viết tắt của Secure Hash Algorithm, được phát triển trong khuôn khổ dự án Capstone của Chính phủ Hoa Kỳ Phiên bản đầu tiên, gọi là SHA-0, được công bố vào năm 1993 dưới tiêu đề Secure Hash Standard, FIPS PUB 180 bởi NIST Tuy nhiên, phiên bản này đã bị NSA rút lại ngay sau khi phát hành và được thay thế bằng phiên bản sửa đổi, SHA-1, được phát hành vào năm 1995 trong FIPS PUB 180-1 SHA-1 tạo ra bản tóm tắt có kích thước 160 bit, được sử dụng rộng rãi trong các ứng dụng bảo mật.
Thuật toán SHA-1, với kích thước 160 bit (20 byte), đã bị phát hiện có thể bị tấn công thông qua các phương pháp phá vỡ, dẫn đến việc tạo ra các va chạm Vì lý do này, SHA-1 hiện được xem là không đủ an toàn cho các ứng dụng bảo mật.
SHA-2 là một bộ hàm băm mật mã do Cơ quan An ninh Quốc gia Hoa Kỳ (NSA) phát triển và công bố lần đầu vào năm 2001 Các hàm băm này được xây dựng dựa trên cấu trúc Merkle–Damgård và sử dụng hàm nén một chiều được thiết kế theo cấu trúc Davies–Meyer từ một hệ mật mã khối chuyên dụng.