With Shelley on the way and native assets/Plutus not far behind, I have been think at the position that stakepool operators might be in once native assets land.
As a stakepool operator, I would like to be able to decide what transactions would be integrated in the blocks produced by my node, and which one I would be relaying to the network.
As gatekeeper of the system, and as representative of the people which are delegating their stake to my pool, I think that it is only natural that I can represent them not only financially (maximising their reward by having a good infrastructure, …), but as well ethically.
At some point, given the decentralized and permissionless nature of Cardano, there might be a time where some tokens, representing assets not in line with some people’s ethic (incentivizing prostitution, security tokens of entities leveraging child labour, practising modern slavery or destroying the environment to name a few) and which I hope a significant part of the ecosystem wouldn’t feel comfortable helping to grow business.
Decentralization doesn’t mean that it has to be the anarchy, and having native tokens with their own dedicated addresses should make it relatively easy to identify specific tokens.
I understand that preventing validation of transactions associated with one token only for a subset of stakepools would be impossible as it would create forks on the blockchain (one set of operator accepting those transactions, the others refusing it), and in the meanwhile of having a governance system which would enable us to ban tokens at the end of a vote, I would have liked to have your thoughts on having a configuration for each stake pool, which would enable the operator to prevent the transactions for specific tokens to land in the mempool and be minted by the pool.
The idea behind it is: if a sufficient amount of pools put a specific token on their blocklist, it would reduce greatly the transaction throughput of a given token, ultimately making it unusable at large scale. Moreover, the number of blocks integrating those transactions would hopefully be very low as the stake delegated to pool agreeing to integrate those transactions would also be very low. Ultimately, that would be reflected in the explorer, where the pool operator would be able to prove its ethic, and would increase the trust with his delegates.
As well, the fact of helping facilitating transactions for illicit businesses in some countries could maybe be seen as illegal, and holding these tokens could ultimately endanger the stake holder? The same way that for example money laundering exist in the current financial system but banks are supposed to help prevent it, these transactions would still exist on the blockchain but the block producers would be accountable to facilitating these transactions.
This kind of idea would be easy I think to integrate in Cardano, and given that the goal is the be able to govern all together the ledger, I think it is important that we could build a code of ethic around it.
Ultimately, participating in this project will show what kind of community we want to be, and what kind of people we would not welcome in our ecosystem. We have to show that we can autoregulate our own ecosystem without having a third party imposing a set of rules on us, that we would not necessary agree with.