I was having my 2 cents thought on the topic as well, my conclusion is: A shared blocking list (Or a
blockchain system, hehe) can only be used as the last resort.
Systems like such already been developed, for example there is one for Twitter made by third-party called "Twitter Block Chain" (https://github.com/satsukitv/twitter-block-chain).
Yes, it can block "unwanted" posters and bots when a correct list is given, but it could also sometime block innocent accounts when somebody is been mistakenly added to the list (Or that somebody just simply changed their behavior for the better).
For such system to work, the maintainer of the list must be trustworthy, which is the hardest part and almost always falls apart.
Add to the injury, it can also be very hard for others to detect mistakes sneaked into the list, as the list may contains more than 10,000 items, makes it impossible to be completely verified manually.
And what to do if a mistake is indeed discovered? Maintain an unblock list to automatically request the user to unblock? Now user has to maintain their own "Yes I manually blocked this guy" list to counter act the automatic one.
My suggestion is: Yes, you can use a shared block list if there is no other way (The Twitter case). But since Mastadon is open sourced, maybe let's try something else first while still can?
Please give this a little thought: Can a system be designed in such way that makes it really hard for their user to accidentally come across some unwanted posts (without having to block the poster)?