Is this definitely the consensus protocol that will be used for bitshares? UNLs make me a bit nervous, but I'm still pretty new to ripple's approach.
It would be cool if a node's score could be improved by signing it with a keyhotee ID. If I remember correctly there was a way to improve your ID's rep by destroying money in its name, this way the solution looks more like PoS and relies less on guessing whether nodes are unique or not
Toast, I understand your concern about UNL and I have plans to address it. This bounty just produces one piece of the puzzle, the selection of the UNL is a separate process.
It all boils down to the following:
1) Mining is centralized one block at a time... very bad for blockchains that implement markets
2) Mining centralizes in control of specialized hardware that the little guy will never control... so is not an option
3) Long-term security based upon proof-of-stake where everyone ratifies the blockchain
4) Short-term security based upon a set of mostly connected (via trust) UNL nodes.
5) UNL nodes vote to add new nodes to the list. Once a new node has received votes from at least 51% of existing nodes it is included.
6) Existing nodes have incentive to grow the UNL list because the larger trusted set of the UNL the more secure the network.
As long as the majority of the existing nodes vote in a growing number of diverse nodes people will have faith in the network not to collude.
The critical thing is that even the nodes on the UNL list cannot collude to rewrite history because of the Proof of Stake, at most they could collude to block transactions but this is no difference than mining pool collusion. The nodes that end up voting to exclude transactions would be public and people could just fork the main chain and select a new group to trust with the consensus process.
The way you keep the UNL list of nodes 'honest' is to make it incredibly easy for a competitor to take over if they gain popular support.