4 Chƣơng ỨNG DỤNG CỦA ECC TRONG BỎ PHIẾU ĐIỆN TỬ
4.3.3. Bỏ phiếu
Xét cuộc bỏ phiếu “chọn 1 trong k”. Các lựa chọn cử tri có thể chọn ký hiệu là Gi. 0 ≤ Gi≤ k. Cử tri phải mã hóa lựa chọn Gi của mình trước khi gửi về Ban KT. Cử tri sẽ dùng khóa công khai của Ban KP cho việc mã hóa. Ở đây, hệ mã hóa đồng cấu Elgamal được sử dụng nên khóa công khai có dạng h=gs trong đó g là phần tử sinh của nhóm Gq. s là khóa bí mật của Ban KP.
Hình 4.3. Giai đoạn bỏ phiếu
Lá phiếu Gi sẽ được mã hóa thành (x, y) = (gα, hαGi), trong đó α là phần tử được cử tri chọn ngẫu nhiên. Cử tri đã tạo được lá phiếu của mình bao gồm (i, sign(i),(x, y)). Do lá phiếu được mã hóa theo phương pháp đồng cấu nên Ban KP không cần giải mã tứng lá phiếu mà vẫn tính được kết quả của cuộc bầu cử. Tuy nhiên, do không giải mã nên Ban KP không thể biết được nội dung chứa trong từng lá phiếu có hợp lệ không.
Vì vậy, cử tri phải gửi một chứng minh không tiết lộ thông tin cho tính hợp lệ của lá phiếu của mình.
Sau khi Ban KT nhận được lá phiếu cùng với chứng minh không tiết lộ thông tin cho tính hợp lệ của nó, họ sẽ tiến hành kiểm tra. Trước hết là kiểm tra chữ ký bằng cách ký lại trên định danh của cử tri. Thứ hai, Ban KT tiến hành một quá trình tương tác với cử tri để kiểm tra tính hợp lệ của lá phiếu qua giao thức chứng minh không tiết lộ thông tin. Nếu ở quá trình này, Ban KT phát hiện ra việc giả mạo hay cử tri đã bỏ những lá phiếu không hợp lệ, lá phiếu của cử tri sẽ bị hủy và quyền bầu của cử tri cũng bị hủy. Nếu lá phiếu hợp lệ, lá phiếu được chuyển về hòm phiếu.