Boundary Nodes as Censors

True but on BTC network the amount of BTC you own doesnt matter for consensus, hash rate does. Mining is also different than buying tokens from investor rounds, 1 million in mining equipment 10 years ago would have been outdated after a couple years, so you had to constantly invest new money if you wanted to keep up with others.

My point is miners always have to upgrade their infrastructure and pay bills if they want to keep their voting power, so while a head start gives you an advantage if I invest to own as much HW as another pool I get the same power as they have, with ICP early investors already have huge advantage cause of lower entry price + rewards but on top of that there is also neuron maturity, so a 1k fresh neuron has less power than one thats 8 years old.

If the boundary operator retains no content on their site and they were to take action, would it not undermine the position of being just a “telecom carrier” vs being a content moderator? I agree, the proposal will provide the boundary operator with a mechanism to comply with an IP infringement request.

The effect of filtering at the boundary node will yield no relief for the IP owner as their content will be as accessible due to the resilient nature of the ICP architecture. I expect lawyers of unhappy clients to quickly learn that taking down a boundary node is insufficient and then immediately take aim at the node operators and/or the data centre operators.


I fear giving the nodes the power to censor would actually make them way too powerful/vulnerable. Unless they are everywhere.
How to separate the protocol from the application layer on the IC?

@harrison makes most sense imo.

Gateways with some kind of terms of use agreement? But then again who’s the judge?

Ideally the canister owner should be liable for the content, nobody else.
But in law usually things aren’t quite clear cut, specially on issues that haven’t been argued before on some higher judicial level. So till there is some ruling taking the nodes out of the line of fire they’ll likely keep getting notices.

1 Like

Unfortunately I have to agree

Medium term, and given the alternative is either:

  1. Do nothing.
  2. Start Invoking NNS Deletes.

I think this is our most viable option, especially when coupled with something like canister shuffling. The larger blockchain community is already very hesitant towards to IC; most days I worry the perception of the IC is eroding more quickly than we are building it up. If we start NNS deleting these things out of the gate I worry the reputation of the IC will be destroyed.

It is worth calling out we can enact this now and in the future remove it, if / when we come up with a better solution. These are as much tools as solutions, and we can pick and choose what tool to use, when we use it, and how long we use it. As with any tool, it commands respect, and its important to make sure you’re choosing the right tool for the job.

In my own personal belief framework there is a lot of content that I believe the IC shouldn’t host. However, I recognize my system isn’t Harrisons framework or anyone else’s for that matter. What should and should not end up on the IC is a hard topic to tackle.

Yes, there are some items I know we’ll all agree on. Even still I argue it isn’t that simple. For example In the event someone uploads a “snuff film”, are we to expect every neuron voter will go watch this video and attempt to figure out if is was actually a real murder? Some will I’m sure, but is isn’t realistic. Now, do this thought experiment with CP… With the current voting structure even the delete path isn’t sustainable and frankly could be psychologically damaging long term (this last part is my opinion)*.

Still have more to say here, but will follow up in another post.


Firstly, thanks for being at the forefront of all critical discussions on the IC @lastmjs ~ appreciate it!

Now for my silly question ~ in one of @Arthur’s recent podcasts (26min 25secs onwards), both Matt Grogan (OpenChat) and Arthur discussed about the Boundary Nodes being “a dirty little secret of the Internet Computer” which is run and controlled by the Dfinity Foundation (for now at least). This was also clarified by a Dfinity team member in a Reddit post 2 months ago here.

In addition, given these boundary nodes have information on location of canisters as noted in Arthur’s podcast with Manu & Diego here (15min 30 secs onwards), I guess any DMCA requests will be directed to the Dfinity Foundation unless it has a clear plan to open up the Boundary Nodes to the general public (if not already done so) in the near future.

From my understanding of @diegop’s recent ‘Long Term R&D: Boundary Nodes’ post, it appears that the decentralisation of Boundary Nodes appears to be more of a long term plan:

It is proposed to enhance the design and implementation of the boundary nodes in several aspects, to make their deployment and operation more decentralized, make them easier to deploy and upgrade, and increase their security.

Their scope is years, not weeks or months as in previous NNS motions

Unless Boundary Nodes are open to the general public soon, Dfinity Foundation themselves will be the sole entity responsible for censoring canisters against which Dfinity Foundation will be an easy target for DMCA requests for some time.

I also understand from the Reddit post noted above that there will be a roadmap for the Dfinity Foundation to open up the Boundary Nodes to others however, have not seen any further information about this apart from Diego’s Long Term R&D post (noted above).

So going forward, for ‘Boundary Nodes as Censors’ to be effective (and not be the sole responsibility of the Dfinity Foundation), we will need to find out if and when the Boundary Nodes will be open to the general public to host (instead of being run and owned by Dfinity unless this has already occurred without our knowledge).

Please correct me if I am completely wrong and/or missing the point here.



I would have expected more transparency around the control of the boundary nodes to be disclosed in the summary that unleashed this entire debate. Not doing so breeds cynicism. Thanks for this post.


I have a general question on boundary nodes…

Does this mean that the content would always still be on the Internet Computer but just that the boundary nodes would stop people from accessing it?


If all boundary were set to filter - it would be blocked from the front end. If filtered by only a few of the nodes, the content would be available. The content would still be on the canister and accessible by another canister.


Since you quoted my words, I thought I should clarify (clearly I left room for interpretation).

Macro: (My intent)

The proposal that is meant for years is not the decentralization of boundary nodes…. It is the long term researching and implementation of boundary node related activities. Akin to “let’s build a team internally to handle all boundary node issues” or “let’s make this a thread from where projects are born from.”

For example, the scalability proposal is about all possible scalability issues. It is no single project. Some projects take days or weeks. Having that as a thread is a multi-year effort.

That was my intent.

Micro: the boundary node folks intent

Folks like Yotam can explain more different blockers and timelines and levels of difficulty and priorities. Do not take my intent about building up “strong arms” for the foundation as me dictating or predicting their work. The boundary nodes folks are working on their 1-pager to explain what they are thinking, so I think some things may be clearer once that is out.

I hope that helps explain what I intended. Sorry for confusion.


After giving it some thought I think the best way to solve this dilemma is to have 2 types of nodes: KYC/NNS approved and anonymous ones.

KYC nodes:

  • Work as they currently do (have to be approved by NNS, flat ICP rewards, etc…)
  • Have to follow NNS imposed guidelines for both HW/network requirements and content hosted.
  • Best for 90% use cases as they have lower costs and best performance.

Anonymous nodes:

  • Lower HW requirements (not necessarily a rasperberry, but a consumer grade workstation with an I7, 32GBs of RAM, etc…)
  • Requires staked ICPs to run a node.
  • Stake can be slashed.
  • Rewards are paid based on amount of computation/bandwidth provided.
  • It doesn’t follow any guidelines, but boundary nodes providers can decide to blacklist specific canisters they don’t want to serve.
  • Only follows NNS when it comes to technical proposals.
  • Slower and more expensive but more resilient to censorship.

What do you think?


Thank you for your answer. That’s what I thought.

So part 2 of my question then would be…

What if someone posts legitimately illegal content? Would there be no way to remove it? Does it just get roped off into some type of “dark web” on the Internet Computer?

Great discussion to be having.

I’m not quite clear on the benefit of moving liability from a storage node (or the underlying data centre) to a boundary node. If anything, it seems like it could make the situation more murky. Those with grievances will surely quickly understand that a single boundary node blocking their content from being accessed doesn’t solve their problem, and so will feel compelled to go after storage nodes / data centres / dfinity (whatever the best attack vector is).

I do agree with the principle of keeping the IC protocols censorship-resistant, and then building community-governed features on top that deal with these issues.

I keep coming back to the idea of filter-lists that nodes can subscribe to, that make the node compliant with certain governance rules automatically. This allows the majority of the community to create a “global” list with rules that deal with commonly agreed issues (and how to resolve them), as well as lists with more specific rules that might apply to certain sub-communities. It also allows for sub-communities who want to take on all the risk themselves and subscribe to no rules whatsoever (in which case, node and canister operators should be 100% liable).

An ICP dapp version of something like could be created to deal with the submission of grievances, as well as the creation, management of and subscribing to filter-lists (including things like voting on new rules, amendments and giving permission to groups of people to administer rules on behalf of subscribers).

1 Like

Interesting concept, probably the best yet. It’s a way of ‘suspending’ the canister from the public, without removing the original canister, in a decentralized way. I suppose you could say it is outsourcing moderation to external gatekeepers, but keeping that open so the power is not centralized. It still leaves many questions as to how a complaint could be effectively filed/verified/resolved and what to do with extreme situations, if the first line of defence is swiss cheese. Dealing with real issues by playing wackamole is not a great look. I kind of like what codi0 is talking about here ^ that could help.

Some artists are already upset with Opensea, I saw this tweet with 30k likes: and this person organizing action … even if opensea deletes the NFTs, they are still out there, probably on IPFS. I feel this story will get worse for all chains, as the creators are exploited by grifters that reap all the rewards of the creators work. This narrative may not have gone mainstream yet, but it’s a slow moving snowball going downhill gaining speed.


plot twist: IC becomes the go to address for artists because of it’s strong stance on IP protection.


I’ve come up with a variation on this proposal, I’m curious to hear people’s thoughts: DNS as Censor (variation on Boundary Nodes as Censors)

1 Like

Presently, if someone were to post illegal content, the NNS has the ability to delete the canister with the offending material. Doing so would require putting a proposal up for vote, and then receive adequate votes. There are diverse views on the use of this capability expressed in this thread. I am only answering narrowly to your question…

My 2 cents:

The challenge as I see it is this: in order to use the IC, people need to trust the IC. But in order to continue to exist and be useful, the IC must not allow illegal content to the extent that states start taking it down either by removing nodes or coercing node providers.

I don’t believe this issue can be resolved with a clever hack. The IC may be in the world of bits, but we live in the world of people, and those people can break things and imprison people or make their lives otherwise unpleasant. If “someone” is making material unavailable - whether it be the NNS or boundary node operators, it needs to be perceived as just or there will be blowback.

The only solution is to devise a process that ensures the material removed from the IC is widely perceived as being respectful of the law. Clearly, the NNS voting on proposals does not meet this requirement. It is a subset of people with unequal power and no obvious competence to make such decisions.

But there does need to be a process in the medium term. Fortunately, people have been working on decentralised justice for some time and as some people have already mentioned, Kleros already has a working model. In a nutshell, people pay to take a dispute to the court (e.g. Nintendo makes a copyright claim). The dispute is farmed out semi-randomly to the community, who pay to sit on the jury. They review the evidence and make a verdict. The big twist is that if they do not vote with the majority, they lose their money. This makes it costly for jurors to insert their own prejudices into their evaluation.

I see this as the only way to create a trustworthy system.

1 Like

This is just not the reality.
I see people responding with far fetched hypotheticals as if this was a new problem no one had to face before, that’s incorrect and it doesn’t help. We don’t need to call Socrates to discuss, as other web3 protocols have already resolved the issue and have been adopted successfully by the community (IPFS, Filecoin, Arweave).


What is perceived as just varies greatly all around the planet. Let local enforcement happen on layers above. They can disappear things in the localities using other tools available to them.