Reveal Committee in Smart Contract?

This is my first post on the community. I have had a few projects floating around in my mind for a while. One of them that is interesting to me is a simple betting application based on the results on participation in consensus. Silvio Micali has indicated in numerous interviews that the proposer and voting committees do become public.

I would like a simple list of addresses that participated in block validation. This doesn’t seem possible in the current version of TEAL. I don’t even see where I can reveal committee votes using the algod/indexer APIs nor the AlgoExplorer. Is there verified public record of votes?

If interested in the idea, here was my thinking from the other day.


The block proposer is included in the block but cannot be accessed by TEAL.
It can be accessed from the algod API though. See Finding block's proposer with new API V2 - #10 by fabrice

There are multiple voting committees.
The step-1 voting committee is not easy to get access to, to my knowledge.
The step-2 voting committee can partially be read from the certs of a block (same API call as for block proposer). There are two issues however that would prevent using this data from TEAL:

  1. Not all nodes see the same step-2 voting committee: there is no agreement on the votes seen. This could be solved by having the next block proposer include the step-2 votes they saw.
  2. Once a node sees enough step-2 votes, then it will not necessarily record the following ones. So a single node does not get a good picture of nodes that voted.
1 Like