scrobble.life
Hive Improvement

Hive Improvement Proposal: Decentralize blacklists on Hive

This is a proposal to make changes to how blacklists are maintained for the Hive network. In particular, the proposal is a way to decentralize blacklists so that anyone can easily establish their own blacklist and can also choose which blacklist(s) they wish to interact with. But before I get into the details of this idea, I want to provide some background on the current state of Hive blacklists:

What are blacklists on Hive?

A Hive blacklist is a list of Hive accounts that are reported to be engaged in some form of behavior that other users find annoying or worse. Blacklists were created as a way to protect unwary Hive users (especially new ones) from various forms of trickery.

As an example, a blacklist might be created to warn of one or more of the following behaviors: phishing attempts to steal private keys, misleading account names that are very close to business services such as exchanges, spamming of plagiarized content and claiming it as their own, identity theft, etc.

Who maintains blacklists on Hive?

Several different groups currently maintain blacklists for Hive (BuildAWhale, HiveWatchers, etc). @themarkymark maintains a server that provides an API for querying these different blacklists.

How are blacklists used on Hive?

A blacklist by itself is nothing more than list of accounts that are publicly published. But these lists are often used by various Hive services such as Hive wallets and browsing sites to warn their users to be wary of interacting with the accounts on the blacklist.

For example, several popular wallets warn a user if they are about to send funds to a Hive account that is very close to the name of an exchange or payment service, to prevent a user from mistyping and sending the funds to the wrong place. As a side note, most exchange wallets do not provide this service, so be extra careful when sending funds from an exchange.

How do services get blacklist data?

There’s really several ways a service can get blacklist data: directly from the list maintainer (often in a git repository), via API calls to themarkymark’s server, or via hivemind servers (several of which currently get data from themarkymark’s server).

For example, hive.blog currently gets it’s blacklist data from hivemind. Hivemind servers primarily read data from the blockchain about posts and votes and provide this information to most user frontends such as hive.blog, peakd.com, and esteem.

Why change the current system?

I’m making this proposal for three reasons: 1) to improve hivemind performance, 2) to democratize/decentralize the creation of blacklists to some extent by making it easier for anyone to create a blacklist, and 3) to make it easier for users to choose what blacklists they want to use.

Enhancing hivemind to support creation and selection of blacklists

Since most frontends rely on hivemind servers to provide them with blacklist data, I think the simplest thing to do is enhance the code base of hivemind itself.

Hivemind already supports a feature that allows users to follow or mute a user. Following a user adds their posts to the user’s feed so it’s easier to find when a favorite author makes a post. Muting a user hides that user’s posts from the user.

My proposal is to add two similar features to hivemind: allow a user to “blacklist” users, and allow a user to “follow” another user’s blacklist. These two features will allow anyone to construct a set of blacklist users and will allow each user to use one or more blacklists created by others.

As mentioned previously, this change will also substantially improve hivemind performance, because the data will be stored locally in hivemind instead of being fetched from an external service. During our work optimizing Hivemind response times, we found that code for computing blacklisting was one of the main causes of slow response times (there were several other causes as well, but these are mostly fixed now, more on that in another post).

How is blacklisting different from muting?

Muting an account means you don’t want to see the account’s posts and comments. Most frontends honor muting by preventing those posts from being displayed when you view the site.

Blacklisting an account implies you think the account is doing something wrong, and is intended to be used as a way to warn others that you think they should be careful when dealing with that account.

How will users “select” their preferred blacklists?

This will require a change to the various Hive frontends, which is ultimately up to the developers and operators of those frontends.

For condenser sites (e.g. https://hive.blog), the site would generally assign a set of “starter” blacklists provided by well-known community members to protect new users. Condenser will also provide an interface for adding and removing blacklists from the profile settings page.

A similar interface would be added for adding and removing users from the user’s personal blacklist (if they wish to create one).

How much work is involved to implement this change?

The good news is, this should be a relatively easy change to implement, maybe a week or less to implement and test at Hivemind level, and relatively little work for the frontends, at least ones that already have features for following and muting, since the interfaces for blacklisting can be virtually the same, with a trivial modification to the hivemind API calls they make. No blockchain-level changes are needed.

And if we don’t make this change, we’ll need to come up with some other way to speed up hivemind using some form of caching of the existing centralized blacklists, because the performance impact using the current method is just too severe.

Comments · 46

  • @wakeupkitty.pal(63)· 1968d

    If it comes to scam I understand although it feels to me these blacklists go way further. I remember a list you once published and ruined many great writers with. Not because they were scamming, spamming, stealing keys but because they shouldn't join different social media. You might find this childish to start about but I notice many behaviour on platforms/social media is childish, unnecessary and feels like dictatorship. Facebook, Twitter are great examples of it but they aren't the only ones. If people are adult enough to join, write, can read the rules about keeping your key safe, use debit cards with punches (same message keep it private) are those rules necessary? Is all this bureaucracy necessary?

  • @rizasukma(68)· 2307d

    Thank you for the information ... Hopefully I avoid being blacklisted. I will continue to strive to create original and quality content. I hope I can be seen here. Peace with HIVE.

  • @felixmarranz(72)· 2308d

    Gracias por su apoyo y esfuerzo para que la colmena sea segura y confiable.

  • @wil.metcalfe(62)· 2310d

    Ok... So where do I go to vote for this proposal @blocktrades? Is there a link?

  • @likwid(66)· 2310d

    A blacklist by itself is nothing more than list of accounts that are publicly published

    Just lists then. Black resonates with censorship with most people.

  • @sneak(65)· 2310d

    This is something I've been trying to get a decentralized social media site to implement since the original idea for Hivemind. Presumably you will implement these in custom_json?

    I encourage you to add operations for both adding and removing either usernames or specific permlinks.

    Distributed, opt-in moderation without gatekeeping is the goal. Nobody wants censorship, and nobody wants an unmoderated site. This allows individual end users to choose how much moderation, and by whom, they want.

  • @lyubo19(67)· 2310d

    I hope that I will never be in that HIVE Blackist 😀 The idea is very logic though:)

  • @vestor(25)· 2311d

    @blocktrades I would love to see a blacklist implementation that only blacklisted users if the flag votes on a post were weighted above the upvotes in both rep and volume.

    Current blacklists are too easily manipulated bu powerful users. I had my steemit account blacklisted for self upvotes, on a list managed by a whale who uses votebots on all his posts. That's just reward pool sculpting not spam prevention. If Hive is going to succeed, it needs to learn from the mistakes made by steemit.

  • @aagabriel(68)· 2311d

    The philosophy behind this is flawed.

    Why would you decentralize a list? A list by nature is an arbitrary way to centralize something into a category so I can't see the appeal, or the logic.

    Is it that much of an issue or a hindrance to the operation of #hive?

  • @logiczombie(67)· 2311d

    How do I vote in favor of this proposal?

  • @logiczombie(67)· 2311d

    ...anyone can easily establish their own blacklist and can also choose which blacklist(s) they wish to interact with.

    This sounds amazing. Optional blacklists are sooooo much better than a ONE SIZE FITS ALL, blacklist capriciously maintained by a small cabal of unaccountable vigilantes.

  • @osakivolezka42(1)· 2311d

    The best cryptocurrency app! - https://kintum.io/

  • @wil.metcalfe(62)· 2311d

    Anything to reduce systemic noise means a better quality signal from every legitimate account on the blockchain.

    It’s a fine balance between protecting and encouraging voice and the antithesis of censorship... but I think a decentralized/democratized approach to the problem of noise is only going to boost the value of all honest accounts on the network.

    I have been sorting my follower/and following lists using @peakd’s front end this week. It’s been quite surprising to see the number of spam accounts that followed me. As well it’s very interesting to note the inactive accounts.

    A change to how blacklists are currently functioning will make the system faster, more efficient, and less centralized. It is a definite must and I think broadly that’s going to translate into less noise, better content, and better behaviour over all.

    If we can continue to move the Hive Blockchain in this direction some of those inactive accounts will become active again (the good ones) and retention will go up as well.

    Count me in. I will vote with all my accounts: @wil.metcalfe @adventureready @beachready

  • @deniskj(67)· 2311d

    I know a couple of people who got added into a blacklist for the flimsiest of reasons. We are all here for different reasons. While there are a bunch of accounts that wholly deserve to be on the current blacklists, I should be able to maybe filter out one or two accounts I believe are wrongfully on it.

    Basically, have the blacklists as they are and enable users to whitelist the accounts they prefer for their own blacklists rather than starting from scratch.

  • @valued-customer(75)· 2311d

    I strongly support this idea. I will support reasonable proposal(s) to implement it.

    Thanks!

  • @hivebuzz(74)· 2311d

    Congratulations @blocktrades! You have completed the following achievement on the Hive blockchain and have been rewarded with new badge(s) :

    You distributed more than 51000 upvotes. Your next target is to reach 52000 upvotes.

    You can view your badges on your board And compare to others on the Ranking If you no longer want to receive notifications, reply to this comment with the word STOP

    Do not miss the last post from @hivebuzz:

    Introducing HiveBuzz Shop - Offer gifts with your favorite badges
    Support the HiveBuzz project. Vote for our proposal!
  • @build-it(68)· 2311d

    Amazing idea! This will surely add value to the Hive Ecosystem.

  • @josehany(80)· 2312d

    I don't think it's a good idea, with all due respect, it's like giving a loaded gun to a monkey. For some people it will go up in smoke, imagine that someone who does not have valid reasons, and put you on a blacklist because you do not like them.

    There are people here who have multi-accounts and we don't even know who they really are, imagine all the spam they would create on the platform. this is my point of view, i don't think it's such a good idea

  • @codingdefined(76)· 2312d

    I don't think so is a great idea to blacklist a user, this is a decentralized platform and thus it's not a good idea to censor any user, then Hive will not remain a decentralized one.

  • @kennyroy(68)· 2312d

    Nice! Nice! I love it... Great and more improvement!!! Really! Really! Great!!! We will take care of this site as long one of you like you @blocktrades is here to make all well and balance! ( ^_^ )

  • @webdeals(76)· 2312d

    the idea itself is good...let's put it in practice and see how it will work :)

  • @engrsayful(73)· 2312d

    It is very much needed to make the unusual downvoters to the blacklist. Some big cows are threatening the minows like me with their stong voting power. Already i have affected much with those downvoters. Some of them downvoted to my quality posts Intentionally. What can i do in that case?

  • @marki99(62)· 2312d

    I like the idea. Thanks for your work.

    Btw, it is becoming absolutely necessary to include a "roadmap" on hive.io, I am getting feedback from a lot of friends visiting the website that they have no idea what is the goal of the crypto.

    Hive is already working, but people in crypto are used to invest in future potential.

    Since development is decentralized on Hive, I think a quick and easy way to deal with this would be to provide a link to the Chain News Badge created by @asgarth or a link to the HiveDevs community. What do you think?

  • @ash(74)· 2312d

    needed!

  • @travelwithus(73)· 2312d

    @blocktrades, maybe you know more infos and can tell me something. My account is on the blacklist, and i made an proposal allready and its over. Do you know if my proposal was succesfull or not, if i am still on the blacklist? Thanks

  • @demotruk(75)· 2312d

    For example, several popular wallets warn a user if they are about to send funds to a Hive account that is very close to the name of an exchange or payment service, to prevent a user from mistyping and sending the funds to the wrong place. As a side note, most exchange wallets do not provide this service, so be extra careful when sending funds from an exchange.

    It's only tangentially related to this topic but I think Hive UI's should move towards selecting names from lists (eg. following list, list of exchanges) and only as a last resort should users ever type someone's account name for a transfer (if it's on none of their lists). One-character typos are just too damn common and usernames don't have checksums, and it's as easy to do with a large sum as a small one.

  • @guiltyparties(74)· 2312d

    People are going to start making a whole lot of blacklists that are themselves spam. It'll be confusing to a point but will likely taper off in the end.

    On the other hand, its good for us who have lists off-chain as it gives an option that's easier to maintain. Currently the only on-chain blacklist is the @plentyofphish phishing blacklist that uses the mute option (the account mutes hacked accounts and unmutes them when they're clear).

    What this will need is some thorough documentation for devs. I already fielded questions earlier today.

    It also seems that there's some confusion of whether it'll cause services like Hivewatchers and Spaminator to lose their blacklist. This will not. It will instead build in a layer of redundancy as backup.

  • @tobetada(77)· 2312d

    Interesting that you decided to make a post about this issue now. I was just working on a post for a possible proposal which deals with the appeal process for blacklisted users. My personal experience and that of others shows that the current team responsible for appeals on discord are quite rude and unfriendly. Especially new users (who have been mistakenly been put on the list) could be turned off by this behavior and leave Hive for good. The idea is to have 2 or 3 "official" hours for people to appeal. This is managed by a paid rotating staff who get paid from the proposal (e.g. 10$/hour). This should make it more professional, but there are still some questions and I am also not sure if this is something that users on the chain would regard as something being high on the priority list.

  • @actnearn(70)· 2312d

    I am completely against this blacklisting and whitelisting business. Assume if on BTC network - some addresses are declared as blacklisted. This is censoring and is against the ethos of decentralization and free speech.

    Some powerful people, having their own views on what is right and what is wrong, decide to declare others right and wrong is a way to rule others.

  • @fionasfavourites(77)· 2312d

    I like this idea. And also that little fish can act against bigger accounts without fear of being hammered

  • @pinoy.viajero(66)· 2312d

    Oh my ghad! This is what I have been looking for in Hive. Thank you so much for this proposal. Sending 💯 support!

  • @artgirl(69)· 2312d

    Hmmm... Hive users blacklisting another user. That could be good, maybe more of a block feature is better? 🤔 What if random or new users just decide to blacklist anyone out of the blue though? There's got to be other conditions to be met before someone is blacklisted by anyone.

  • @peakd(74)· 2312d

    We appreciate bringing this up and providing a viable option for decentralization of these lists.

    We have wanted to see lists select-able by the users. With certain lists opt in and some opt out by default. So if this helps towards this end that would be wonderful.

    If this goes through we would love to see lists have a few fields to help inform potential subscribers of these lists about what the list is and why they may be interested.

    • Who runs the list, maybe who is involved for selection. (user decided or committee etc)
    • Short introduction to the list
    • Qualifications for adding to the list
    • System employed for removal from the list (if any)

    I think PeakD together with users will likely make decisions which lists provide valid information and benefit to users (like level of consistency and specificity of the list etc) and provide those lists as options to users to opt in or if for some lists limited to dangerous accounts we could see them as opt-out instead of opt in.

    What is next up for helping this proposal happen?

  • @deanliu(83)· 2312d

    love the idea, especially introducing decentralization into bl creation so individual creators must compete in some sense and hence reduce the disadvantage of power centralization, but how well it functions will need time to tell of course.

    Just want to confirm the following questions, thanks in advance:

    Can users follow/create multiple blacklists?

  • @mattsanthonyit(81)· 2312d

    I still have the mobile phone with me for more than 8-9 months ago now. This is what it always bring up and show.

    IMG_20200529_231540_000.jpg

  • @mattsanthonyit(81)· 2312d

    Please. I need your assistance here on this, not blacklist issue but something critical and pathetic in nature. I lost my Steemit ( formal account password ) which lead to so many disappointed, disability, distasteful moment for me even with my family members as well. What really happened was that my mobile phone got hooked up and went dead suddenly. I nearly die this fateful day because I thought it was a joke, I kept on charging for more than 12 hours and this phone did not come up at all. All my Steemit password was stored on one folder apartment there. And I lost them with so many rewards there. How can you be of help to me. Thanks. Can we talk more on discord. I have your address. Thanks sir.

  • @johnolusegun(71)· 2312d

    Does the blacklist means to block another member from communicating with me permanently or to report the member?

  • @idkpdx(64)· 2312d

    What if there was a system implemented in the same way that we vote for witnesses? Perhaps we could vote for accounts to be added to the blacklist? Any thoughts?

  • @fredkese(72)· 2312d

    People with some form of influence will create a blacklist and add people just when they want

  • @resiliencia(75)· 2312d

    If it can improve the hivemind performance and add a decentralized way to blacklist accounts, sounds really interesting to do. Thanks for the work!

  • @ssjsasha(74)· 2312d

    All I know is I don’t like that little red (1) next to my account

  • @steevc(81)· 2312d

    I can see uses for blacklists as there will be people who create lots of accounts to spam Hive. So far that has not been too much of a problem, but it is likely. It's not feasible for every user to mute every spam account and so we will need this. Being able to choose which blacklists we use would be great. Some people may want to see troll comments for whatever reasons. Bring it on!

  • @cmplxty(78)· 2312d

    This one is both great as well as tricky. Hopefully a million blacklists won’t get created. Then again if a blacklist only has one person or two on it, does it matter? Most likely not.

    Still like the thought of getting a bit more decentralized with this. We shall see how it unfolds.

    Also glad it’s not too difficult for you folks on a coding side.

  • @adechina(58)· 2312d

    I hope this will not cause paying back unnecessary grudges increases.

    If anybody can create a blacklist, then blacklist will be on a rise and people who does not even deserve to be on the blacklist get blacklisted either offending the owner of the blacklist stuff or getting into a little conflict.

    I hope this proposal is rethink again

  • @beerlover(65)· 2312d


    Hey @blocktrades, here is a little bit of BEER from @amico for you. Enjoy it!

    Learn how to earn FREE BEER each day by staking your BEER.

  • @amico(67)· 2312d

    A huge hug 🤗 and a little bit of !BEER 🍻 from @amico!


    Un caro abbraccio 🤗 e un po' di BEER 🍻 da @amico!