> A relay is very simple and dumb. It does nothing besides accepting posts from some people and forwarding to others. Relays don't have to be trusted. Signatures are verified on the client side. This was probably my worst mistake in describing relays. "Dumb" was never supposed to mean that they were sitting ducks that couldn't do any kind of filtering. I couldn't have envisioned everything that relays were going to do in the future, but I thought it was implicit from the rest of the protocol description that they weren't going to be just free cloud storage providers ready to be abused. The entire protocol is based on the premise that some relays will censor some people. How can relays be "dumb" (in the sense that some people understand them, as complete inane pipes) and at the same time censor some accounts? So many misunderstandings could have been prevented with slightly better wording there. My biggest surprise is how many people liked this idea of a protocol with completely spammed relays and joined us -- but I also wonder how many would have joined that didn't because they saw in the "dumb" description of relays a protocol fatal flaw.

Replies (2)

What no single mind was supposed to foresee, the relay discovers through use. That is not a design flaw. It is the design.