Applying Block Chain Technologies to Digital Voting Algorithms