Traditional voting methods, conducted at physical ballot boxes, incur numerous expenses related to campaign logistics, equipping voting centers, and compensating workers. However, these methods may not guarantee the honesty, traceability, and integrity of vote results. In contrast, centralized electronic voting streamlines the process, saving resources and time while automating ballot counting for faster and more accurate outcomes. Despite these advantages, centralized systems are vulnerable to forgery and lack transparency due to their reliance on private servers controlled by the voting authority. To address the issue of single points of failure associated with private servers and to enhance transparency, a distributed, secure, and fully connected technology is required. Therefore, we propose a blockchain-based electronic voting system with a web application as its frontend. The implementation of blockchain technology helps prevent forgery and ensures immutability, as votes are openly monitored by all participants. However, the transparency and traceability provided by blockchain—essential for ensuring that no voter casts multiple votes and that no unauthorized votes are injected—contradict the confidentiality and privacy requirements of the voting process. To reconcile the need for transparency with confidentiality, our proposal incorporates additional security measures, including key images, group addresses, and group signatures. This privacy-aware blockchain-based solution guarantees the uniqueness of each vote and prevents multiple voting attempts without compromising voter confidentiality. We evaluated the security of our designed solution using an attack tree to identify potential threats and estimate their likelihood of occurrence. The results shows that the proposed system is 3.2 time more secure compared to the traditional centralized voting system.