An electronic voting method comprising: a. Receiving a voting choice related to a supported candidate and a random choice from a set of predetermined random choices, the received random choice being assigned to the received candidate choice, namely the voting choice, via a human-machine interface of a voting machine, b. generating an output of a cryptographic algorithm for performing encryption by the voting machine, wherein the cryptographic algorithm makes use of a secret, the inputs to the cryptographic algorithm comprising the voting choice and the random choice c. Printing the algorithm output on a paper receipt, d. Receiving a random choice for each candidate from the set of predetermined random choices assigned to each of the candidates via an optic scanner of the voting machine, e. Printing all of the random choices received in step (d) on the paper receipt, f. Waiting until the received random choices of step (d) are compared with the printed random choices of step (e) by a voter, g. Receiving approval of the voter if the received and printed random choices are the same or, h. Receiving rejection by the voter if the received and printed random choices are not the same and informing an officer of the incompatibility, i. if approved, storing data comprising a voter's verification text that is comprised of the algorithm output of step (b) and the random choices of step (d) in a local database of the voting machine, and providing the paper receipt to the voter, j. after the polls are closed, transferring the data on the local databases of the voting machines to a central database of a voting center and making the transferred data public, k. checking proper counting of the votes when the voters check their verification texts with the data made public, l. assuring proper counting of the votes by the voting center by verifying the proper casting of votes during evaluation of votes from the data collected from the databases of voting machines by using the stored data comprising the algorithm output, the random choices of step (d) and the secret of each voting machine on which a vote is cast. a. Receiving a voting choice related to a supported candidate and a random choice from a set of predetermined random choices, the received random choice being assigned to the received candidate choice, namely the voting choice, via a human-machine interface of a voting machine, b. generating an output of a cryptographic algorithm for performing encryption by the voting machine, wherein the cryptographic algorithm makes use of a secret, the inputs to the cryptographic algorithm comprising the voting choice and the random choice c. Printing the algorithm output on a paper receipt, d. Receiving a random choice for each candidate from the set of predetermined random choices assigned to each of the candidates via an optic scanner of the voting machine, e. Printing all of the random choices received in step (d) on the paper receipt, f. Waiting until the received random choices of step (d) are compared with the printed random choices of step (e) by a voter, g. Receiving approval of the voter if the received and printed random choices are the same or, h. Receiving rejection by the voter if the received and printed random choices are not the same and informing an officer of the incompatibility, i. if approved, storing data comprising a voter's verification text that is comprised of the algorithm output of step (b) and the random choices of step (d) in a local database of the voting machine, and providing the paper receipt to the voter, j. after the polls are closed, transferring the data on the local databases of the voting machines to a central database of a voting center and making the transferred data public, k. checking proper counting of the votes when the voters check their verification texts with the data made public, l. assuring proper counting of the votes by the voting center by verifying the proper casting of votes during evaluation of votes from the data collected from the databases of voting machines by using the stored data comprising the algorithm output, the random choices of step (d) and the secret of each voting machine on which a vote is cast.