C ƢƠN 3 XÂY DỰNG HỆ THỐNG VÀ THỬ NGHIỆM
3.3.2. Kết quả thử nghiệm
Ứng dụng được chạy trên server local với đường dẫn http://localhost:3000. Sau
khi triển khai người dùng liên kết với ví và bầu chọn, kết quả được lưu trên blockchain nên không thể bị thay đổi hoặc xóa đi. Quá trình bầu chọn cho ta thấy được sự thay đổi trên blockchain.
Sau đây là một số hình ảnh khi sử dụng hệ thống.
Để đưa contract lên blockchain network ta dùng lệnh truffle migrate
Có thể thấy contract của chúng ta đang live trên BlockChain local với liên kết
http://127.0.0.1:7545
Thông tin về Smartcontract được hiển thị trong hình ảnh dưới đây. Address là
Khởi chạy web client bằng lệnh npm run dev, khi đó web client được khởi chạy tại địa chỉ http://localhost:3000
Đầu tiên khi cử tri chưa cài đặt ví điện tử s có thể xem được kết quả bầu cử
đang diễn ra. Việc đọc thông tin trên smartcontract là miễn phí.
Hình 3.4: Chạy demo Hệ thống
Nếu cử tri không cài đặt ví và liên kết với ví cử tri s nhận được các thông báo
Để thực hiện bỏ phiếu bạn cần cài đặt metamask và liên kết với ví của bạn.
Cài đặt tiện ích metamask và liên kết ví điện tử. Trên mạng blockchain cục bộ chúng ta có được 10 tài khoản, ta dùng private key của mỗi tài khoản để add vào ví điện tử. Sau khi hoàn thành s có giao diện như hình dưới đây
Click vào button connect your wallet để kết nối với ví điện tử. Chọn tiếp theo
Sau khi hoàn thành việc kết nối với ví điện tử client s hiện ra phần phiếu bầu cho cử tri có thể thực hiện việc bỏ phiếu.
Người dùng lựa chọn ứng cử viên sau đó bấm vào vote s được hỏi xác nhận phiếu bầu, nếu không kết quả bỏ phiếu s không được thực thi.
Hình trên có thể thấy được giao dịch từ address của cử tri đến address của
contract.
Sau khi cử tri xác nhận s nhận được thông báo đã hoàn thành.
Cử tri đã bỏ phiếu s không bỏ phiếu được lần thứ 2 vậy nên phần phiếu bầu đã được đóng lại và cử tri s nhận được lời cảm ơn từ ban bầu cử.
Các thao tác bỏ phiếu s sinh ra các giao dịch, thông tin được được mã hóa thành các block và nối tiếp vào blockchain network. Hình ảnh các block được tạo ra và liên kết với nhau trên blockchain được thể hiện ở hình bên dưới.
Bên trong các block lưu trữ các thông tin sau:
Các transactions được công khai trên mạng BlockChain Ethereum và nằm bên
trong các block.
Thông tin lưu trong một transaction, các phương thức được gọi và giá trị được