I'm a strong believer in free speech, and the free exchange of data. Censorship is an issue that came to mind when I was thinking about the future of GNU Social.
Who has the power to censor data? In short, the person who distributes it. Several methods of data conveyance have been proposed on this list. I (rather naively and indirectly) proposed an extremely decentralized system of data distribution: ultimately, your profile and data comes directly from you. Encrypt before sending, and it bounces amongst friends of friends until arriving at its final location, where it can be decrypted and viewed. This is rather impractical, with a sharp increase in bandwidth among other things, but would provide essentially a Freenet-like system or censorship resistance. Another proposed method is to have various repositories of data, by means of an XMPP or similar server containing the data of its immediate users. This is much more practical, but raises a question in my mind. What if a given university wants to provide a GNU Social server for its students? Suddenly, the university has the power to censor any and all data that ends up on it, because it is distributing the data. I do like the idea of one person in a group of friends running a server for them, but honestly, even then I'd rather encrypt all of the profile data for Person A with Person A's private key, so that when you receive it on your computer and decrypt the data with your confirmed friend's public key, you know it was from them and has not been tampered with. Fortunately for the project, I'm not running it. We all are. Just my two cents. Call me an extremist. ;) --Andrew Gray (Sweetandy)
