As an introduction to peer to peer networking and/or blockchains, I want to make a little project, but I need to know the limitations of cryptography and what combinations of features are possible. Here's what the ideal (if it were backed by a traditional server) application would feature:
Is this possible? If so, what technologies should I pursue? I took an initial look at Raft for a consensus protocol but the TTL and time based nature of the votes makes me doubtful a consensus algorithm will be more useful than a blockchain.
For time-locked crypto you can read more here: https://crypto.stackexchange.com/questions/606/time-capsule-cryptography
When you understand it you will find out that you can limit things by number of calculations required only, which is somewhat a proxy for time required, and thus not guaranteed.
You will have to build a peer-to-peer system with peers competing over to "solve" a vote to their competition and thus make it invalid. Although this wont ensure fixed '30days' it can ensure almost equal time to live for all votes in the network for a certain election round.