Hacker News new | past | comments | ask | show | jobs | submit login
Anonymous Reddit without servers (getaether.net)
207 points by vyrotek on July 3, 2015 | hide | past | favorite | 102 comments



Persistent pseudonyms seem to be required for voting-based communities to work. Without them, what is a vote? Whose votes do I trust?

Distributing reddit is a hard problem, but making it anonymous is even harder. It'll be easier to start with cryptographic identities and add anonymity later. In the meantime, users can generate new identities for every action. They will be ignored by other users, since reputation is the easiest way to separate signal from noise.

Building this system will be much easier if you investigate the toolkits for building distributed systems that have been built since Aether started. Ethereum has three building blocks for distributed systems: a blockchain for storing data that requires consensus, like the identities of the creators and moderators of a community; Whisper, a messaging system for sending data that doesn't require consensus, like broadcasting the existence of a sub-forum; and Swarm, a distributed data store for things like discussion archives and the HTML, CSS and Javascript that such a discussion system could be built from to run on every device that every user owns. (For an example of an application with this sort of architecture, see Augur. http://augur.net)

Besides the development speed gained from using these tools, your system will gain benevolent forkability. You want developers with ideas about decentralized communities to write forks that effectively don't steal users since everyone's using the same data sources to read from and write to. But using a homegrown distributed system makes that less likely. If it were built on Ethereum's toolkit, even if a developer disagrees with most of what you've done, it's in their interest to use the same data source even if they rewrite everything. The userbase of benevolently forkable distributed systems never needs to be split, which is a powerful characteristic for growth.

Aether is fantastic, and it's where the web is heading. Good luck!


Ethereum is super interesting but I'm kinda turned off by seeing "Licensing" and looks like it's aimed at some sort of profiteering, which I don't think is compatible with the sort of architecture we are going for, but I might be wrong here, please feel free to correct me.


Nothing wrong with licensing, cryptocurrencies on the other well meh...

All of those "proof of work" type schemes eventually will dwindle down to the same centralized network they are aiming to replace.

With the amount of compute power required to perform any operation mining will end up being handled by a couple of big players which the rest will use a proxy.

BitCoin already is pretty much centralized with mining becoming an operation which requires you to setup a bloody data center to get into the game, yes allot of those are some weird complexes in the middle of no-where China, but they are still bloody huge and expensive.

And there isn't much you can do about it, if you build a network which establishes "trust" based on "effort" the effort cannot be trivial, or to be more exact the amount of trust one will have in such network is tied directly to the amount of effort one has to put into it to perform a given task.


That's not true. While bitcoin mining is conducted through pools, what mining pools do is entirely public. Miners can easy choose another pool if one abuses their power.

For example, in 2014 a pool named GHash.io was close to obtaining 50% hashpower. It is customary for pools to stop accepting new signups when they are close to 50%, however GHash.io refused to do so. The miners organised an exodus and GHash lost half of their miners in a month.


What is stopping people from setting up multiple pools and getting 50% that way?

How do you really know all those pool operators are actually different people?

For a 'trustless' system, it seems like you need to place an awful lot of to trust in this small, secretive cabal of mining operators.


I understand from what you're saying that bitcoin is continually dependent on social customs that have already reached the verges of failure.

At the moment (some) miners are motivated to avoid 51% attack because they gain more from protecting Bitcoin's value than they do from profiteering with a 51% attack.

If that stops being the case, even for a moment, then the 51% attack will happen.

http://www.coindesk.com/eba-51-attack-remains-bitcoins-bigge... [2 weeks ago]


Yup, it's like pretending VISA and MASTERCARD are decentralized forms of currency. At least you can buy a beer with them in under 10 minutes.


You can indeed buy anything less than ~$100 instantly with Bitcoin. Payment processors like BitPay and Coinbase accept zero confirmation transactions for small amounts, simply because the costs of double-spending 0 confirm are massive.


So what you're saying is that you can do instant transactions with bitcoin if you don't actually use bitcoin.


No he's saying the cost of double spending is much larger than $100 so merchants will/should generally accept those.


No, Coinbase and BitPay accept 0-confirmation transactions when you pay a vendor by publishing a Bitcoin transaction through the Bitcoin peer-to-peer network, if the vendor has set it up to do so.


I thought bitcoin was a decentralized currency that didn't use payment processors like VISA / MasterCard...


Bitcoin doesn't require payment processors, but it doesn't prevent people from using them either.


Which is exactly what grandparent said:

> All of those "proof of work" type schemes eventually will dwindle down to the same centralized network they are aiming to replace.


I don't think (s)he was talking about the payment processors, but about the centralization of mining, which is a different issue.

And a payment processor in Bitcoin is closer to a company that runs cash registers than a provider like VISA. The worry is about the companies that want to control both ends, like Coinbase, not payment processors in general that simply take care of accepting BTC on behalf of the payee.


They'll up being the same in the end it's just the logical financial evolution of the scheme.

With ever increasing mining complexity coupled with ever growing demand for more and more mining since the rate of transactions in the system is directly tied to its mining rate when the block rewards will become rarer and rare till they eventually halt you'll pretty much will end up only with the "Banks" doing or controlling the mining since they'll have to ensure at least a minimal mining rate which covers their transaction volume.


the rate of transactions in the system is directly tied to its mining rate

How so? That's not my understanding at all - you could have a rate of transaction at the level of VISA with just a dozen computers or so. The mining difficulty is a consequence of having many miners (which makes the software auto-increase the difficulty of the problem), not of the increased transaction rate.

the block rewards will become rarer and rare till they eventually halt

That's why there are transaction fees, which pay the miners in lieu of the block rewards.


It's an ouroboros turning into a catch 22 you can't have an open system with high level of trust if the computation is trivial.

Ever increasing difficulty raises the bar so high that it centralizes a system due to the hardware requirements (there is no way to effectively mine BC today on standard computing hardware sorry) and their costs.

Look at the BC network now it's either huge centrally controlled mining pools or multi-million dollar mining farms which are controlled by individuals, this isn't decentralization of anything but computing assets as far the the pools are concerned.


There's an intention is to transition ethereum from proof of work, to proof of stake, to avoid some of the mining centralization and waste.


The licensing page lists three buckets of free, open source licenses for various parts of the project. I don't understand.

https://ethereum.org/licensing


I like to think that I understand most open source licenses - but that is just making my head spin.

> The core of Ethereum will be released under the most liberal of licences.

Then why aren't they considering MIT? That's about as liberal as you can get.

> it will come with an amendment allowing it to be linked to be statically linked to software for which source code is not available.

NO NO NO NO STOP NO. Do not attempt to modify open source licenses without consulting with a lawyer. It seems innocent enough - but it could cause problems down the road. There is also some rules that say you cannot call it GPL anymore if you modify it [1].

[1] http://www.gnu.org/licenses/gpl-faq.en.html#ModifyGPL


Wait, the sentence above the second one that you quote is:

"In this way, while we have not arrived at a final licence, we expect to select one of the MIT licence, the MPL licence or the LGPL licence."

They are definitely considering the MIT licence. Did they do a ninja edit?

I definitely agree with you about the amendment thing.


> They are definitely considering the MIT licence. Did they do a ninja edit?

Perhaps my head was spinning from the vagueness of their license decision and I just overlooked it.


Is it MIT or BSD? Thats what I mean ant by profiteering, it doesn't fit with the model of distributed, p2p, anonymous, decentralized and secure architecture it seems to be speaking about while at the same time promoting so business.

My reason is not that profiteering is bad, but in this particular case, I just don't see how you can compromise anonymity with copyright and a business around it.

For this to be truly anonymous, I just don't see how a business can be attached but cause at the end of the day we are still coupled to the original writers.

What's I'd love to see is something like ethereum but without a business or copyright attached to it.

I hope this makes sense, to truly build a decentralized and anonymous networ, can you try to also build a profitable business on top of it? Maybe I've misunderstood.

I'd love to start working with it, however, I realize how his is still have he early day. The future is a completely decentralized, anonymous p2p network that has no overwhelming force from a single agent to censor or corrupt information.

Imagine if facebook, Google, all of it could run on our phones, tsblets, desktop. You can't shut it down. By the n I assume we will have some sort of mesh networking where we don't even need to go through an isp, just a cluster of trusted and self healing network nodes.


The licences mentioned are MIT, MPL, LGPL, Affero, and GPL. All of those are very well-respected OSS licences. And it's easy to find examples of for-profit companies that use (and abide by) any one of those licences. I really don't see anything worth noting here.

Anonymity and decentralization make advertising-based revenue difficult, true, but there are lots of other open source business models; consulting for example.

However, in this case they're clear: they'll be selling etherium. That's completely compatible with even the most strict definition of Open Source (or Free Software, for that matter).


> And it's easy to find examples of for-profit companies that use (and abide by) any one of those licences.

You can also find companies that don't. I am under the impression that nprobe source code is under the GPL [1] but the author sends DMCA requests to those who want to use the source code under the terms of the GPL [2] [3]. Then there was the company who created the entourage edge (an Android powered device) - for the longest time they refused to release the modified kernel source....they eventually did then they went under.

[1] http://linux.exosec.net/mirrors/www.ntop.org/nProbe.html

[2] https://github.com/github/dmca/commit/859890b8aaf4db678dce96...

[3] https://github.com/github/dmca/commit/85c03a289fe56c67636ed6...


I stumbled onto this while discussing with some friends the possibility of someone creating a "distributed Reddit". I thought it might bring the opportunity to discuss some Reddit alternatives.

Does anything similar to Reddit but with a model more like Wordpress exist? Perhaps there's interest in offering independently hosted sub-communities that can be centrally linked to for discoverability? Could it provide subdomains such as programming.newreddit.com which pointed to an externally hosted community?

Is what I'm describing what Diaspora was attempting to create? I haven't honestly looked into it very much. Many people have suggested trying out http://voat.co which looks like is open source. Someone may be able to leverage that.


> Does anything similar to Reddit but with a model more like Wordpress exist? Perhaps there's interest in offering independently hosted sub-communities that can be centrally linked to for discoverability? Could it provide subdomains such as programming.newreddit.com which pointed to an externally hosted community?

I was just talking to a friend about setting this up.

1. Take the reddit codebase, strip off all the subreddit stuff so you've got one "subreddit" per site, and set up a WordPress.com-like site to allow people launch instances of that in a cloud somewhere, with a profit margin to you;

2. (optional) create an "aggregation" API for the instances and an "aggregator" site+app that lets people sign-in to subscribe to conformant sites (y'know, like an RSS reader), then spits out a reddit-front-page-like index. All the links and votes and such are API calls back to the originating servers; the aggregator is just a read-only consumer of the sites.


You'll need to tie the deployment to a payment mechanism to achieve this for a subset of users without giving control to a single entity. I have some ideas how to do that.


That sounds interesting. Would be a fun project.


This sounds like a more complicated version of disqus. Disqus lets you integrate the discussion thread on your website. And also agregates some recommended content on their own site. They even do voting. So it is basicly all there.

I am currently working on a feedly alternative that also integrates the ranking of the aggregated site and design wise looks a bit more like Medium. But the main Goal would be to implement something I would call a smart group courating feature. I am yet undecided if I really should integrate dicussions. They seem like a lot of work with little reward.


Reddit itself is opensource and much less of a disaster of a codebase than voat.


Well, there you go. Why is the voat codebase a disaster?


Go look on the csharp subreddit. There is a thread there about it with a lot of posts. It was a learning project for a student to learn C# AFAIK. The code reflects this beginning.



http://www.telescopeapp.org is sort of what you're describing. WordPress for vote-based online communities.


This has been on a couple of times. It's an interesting concept but user's reputation isn't really stored anywhere. It's just a synch of data between peers. So someone can very easily simulate many points, or upvote content several times.


Was it namecoin? I can't recall the name of the project but the idea was you mined (ala bitcoin) coins for your "name".. so if you had a year's worth of processing behind your name then you were an established identity vs someone with 0 seconds of processing.


I like the idea. However, instead of using processing, it would be nice to use "activity" i.e., up votes, down votes, quality submissions and comments as the reputation. We already know what happens in a truly anonymous systems with no moderation - it doesn't make an ideal community.


Yea namecoin would work just fine.

If the issue was authentication, even vanilla signatures (GPG) would be fine, but people want to associate identities with short names, so a name resolution system is needed.


Wouldn't that end up as the person with the most money has the biggest voice?


Only if implemented that way. Intrinsically there is simply more certainty that they are who they say they are.


Getting to a high level of traction while requiring people to download a client is incredibly difficult. I can't see it happening.


That wasn't a problem with Napster, Limewire, BitTorret, and all the other P2P apps that existed before... people will download and run things if they believe in the value of doing so.


This isn't the 90's. Downloading and installing software really isn't a thing anymore for a lot of people.


Really? App Stores seem pretty popular.


Based on the aether's name and your comment, I thought this discussion was about Ethereum.

An app built on Ethereum would also check off the 'decentralized' box for people who are angry at Ellen Pao.

https://www.ethereum.org/


To me, decentralization isn't just about avoiding control. I think that the network effects that decentralization yields are the only way to compete with an established network. It's hard to get people to agree on which centralized alternative to use, but if structured correctly, there can be just one decentralized alternative with several benevolent forks with different features, but a shared data store. No one's in control, and everybody wins.


And it is more than possible! Eris Industries inception project was effectively a reddit clone running on etherium.


If it would be a browser based solution, the number of people who try it would be 1000x higher.


You mean browser-based, as in provided by a server (aka centralized)? Perhaps there is a way to daemonize the process and run it headless on a server with web access, but the whole point is no central server to depend on.

Edit: I guess I don't understand how this project, which makes one of its key features to be be web server less, would be accessed by web browser without doing what I suggested above. Could you explain?


Browser-based, serverless apps are what Ethereum is all about. You run a daemon on your computer that maintains a blockchain, messaging system (Whisper), and content storage system (Swarm). That daemon exposes an RPC interface so local processes can get data from it. The most common result is an HTML, CSS, and Javascript bundle that is a full-fledged application without a server, because its backend is peer-to-peer.

Web apps aren't a requirement—you could build a traditional desktop app that talks to the Ethereum daemon as well. But using the application runtime that everyone already has installed lowers the barrier to entry, so it's what most successful projects will choose.


>You run a daemon on your computer

I think you might notice that in the comment you are replying to I specifically mention using a daemon?

Anyway, running a daemon still requires one to download software which seems to be the point of complaint for some people with this project.


Just sharing a concrete example that exists today. Yes, a download is still required.


Sounds a lot like Freenet.


WebRTC let's you build server less web apps.


Not really - you still need the centralised signalling server for initial connection setup between peers. And this is needed for every new connection.


Yes. And?

It's like you'll also need DNS, which isn't decentralized either.

If someone wanted to write this as a WebRTC-based decentralised version there is nothing stopping them using something the like the public signalling servers that Mozilla uses for their Hello service.

Also, if some users wanted to run a signalling server themselves, that's ok too.


I get your comparison, however DNS is not actually that fundamental to P2P networks, all you need are IP addresses (at least not after the bootstrapping phase). Whereas this is making the entire connection setup dependent on these signalling servers.

You're right, there are public signalling servers and such. I just wish we weren't so restricted in setting up direct connections, such that you could do it through your bootstrapping peer in the network.


Hmm. I still don't get it. You mean build another project entirely, but base it on a web browser using WebRTC?


I think it's a terrible idea for many reasons. Cite FriendFeed, Diaspora, Identica etc.

But at the same time, if someone wants to try: yes, it needs to be browser based, and the lack of a server doesn't need to be a limiting factor anymore.


What's wrong with that? Federation makes a lot of sense.


what about a chrome extension? or a firefox extension?

I'm still lost as to how the whole blockchain thing that is supposed to store pseudonyms and their reputation thing works, I blame my fear of math and calculus to really be able to dive deep into how such algorithm/processes work.


Honestly, most of the functionality I need from Reddit is replicated from active message boards that I frequent. Yeah, there often isn't any kind of "voting" mechanism, but the part I love most about the smaller subreddits is the discussion. Popular threads always stand out.

This particular project seems to be more about the mechanics behind having a distributed system and not as much about the community-building aspects, but to be honest when I hear "Decentralize Reddit! Host the subs elsewhere!" my first thought is, "you're describing the internet."


If it is only going to rely on community votes for moderation, how will it deal with spam?


> It's also temporary. Whatever you post disappears after six months. It's designed to be an ephemeral space, and it's focused on now, rather than the past.

Not a fan of this idea. I love finding new subreddits and taking a look at their top posts of all time.


Ditto. Information on topic-specific subreddits is really useful, and not always subject to rapid bitrot.

(Context: I'm a filmmaker. There's plenty of writing about filmmaking from 30+ years ago that's still very useful. And filmmaking is a comparatively tech-driven, fast-moving interest.)


Anyone in the Bay Area is serious about building a Reddit alternative, let me know - me (at) smaili (dot) org


I think the next 'reddit' needs to be an evolution and innovative in some ways. Cracking the comment thread organization would be a good place to start, that seems like something that could really be improved on. Also, as a few other people have mentioned in here, decentralizing/decoupling the central 'brand' from the individual 'sub sites' seems important from both a technical and business standpoint.


I am working on a feedly alternative that also ingests the voting/ranking of other sites like Reddit and Hacker News. Do you think implementing discussions that can be integrated via Javascipt a la disqus would be a good solution? Building voting/raking ingestion and also discussion ingestion could also be done via an Open Protocol so all Feedreader could benefit.


Small sample size, but thats the one feature I sorely miss in feed readers: comments and discussion.



It's slightly funny to read about a "moderated, distributed, and anonymous" forum system, as if these features were new and exciting, when we've basically had exactly that since about 1980: usenet.


So, the obvious question is this: why aren't we seeing a massive influx of Usenet users from Reddit right now? And why didn't everyone move to Usenet rather than Reddit after Digg fell apart?

There's clearly something, or somethings, that are preventing Usenet from being terribly useful at present for the "Reddit-like" use case.

(I used to be a heavy Usenet user back in the '90s. Haven't touched it in more than a decade, though.)


It's been a good while, perhaps a decade now, since usenet was really a commonplace thing, so it's unlikely that anyone will ever flock there now.

Usenet's downfall perhaps in part stems from its legacy as part of the "nice" era of computing's history, when it was just sort of assumed that everyone using computers were friendly people in academia and thus we didn't need to worry about bad people doing bad things. Some people would date Usenet's downward spiral as starting with Eternal September, but I think really it was just spam and binaries that killed it (the latter making usenet very expensive - and risky - for ISPs to offer as a service; which meant then looking for a (probably) paid-for alternative news provider).

Once people stopped using it, it became hard to see why it was good in the first place - and everybody by that point was doing everything through their web browser, and there never really was a great usenet experience through the web (certainly Google Groups wasn't it).


Anyone heard of freenet project, this seems like a bad copy.


with a more interesting interface =D


Bad, bad stuff on there.

No way.


Only if you dig deep enough for it. There are certain subreddits that are pretty bad as well.


You see links to "it" on the intial page.


Anyone else worries about: "Whatever you post disappears after six months." ? On one side you might wish to keep posts, like for example questions. And on the other side, people can just copy the posts or make a client that keeps a copy forever locally. And thus such claims cannot be guaranteed.


I think it might mostly be a question of capacity. One can save stuff though, so that fact isn't hidden at all. It's also mentioned.


I built http://www.sagebump.com

It brings across and merges your sub reddit preferences, slashdot feeds & stackoverlfow feeds.

It then removes bias, ranks and merges the articles together.

I mentioned it on reddit but got absolutely no traction.

I think it might have been because you don't post directly on the site.

I can do that but it was meant to act as a tool to merge accounts rather than enable native posting.

Anyway, if anyone likes what they see and want to help me either develop it or get it exposure, then I am happy to collaborate. Whether it be a co-founder or investor.


I like this a lot. Some feedback:

- Can you remember that I've visited so I don't need to see the intro again?

- The intro does a pretty poor job of explaining what the site is. Even just a header saying "Sagebump: Aggregated social news feeds"

- Do the filters work in Settings? Also the word filter is ambiguous here; I'm not sure if I'm filtering in or out.


Hi, yes the pop up was a quick hack yesterday I will add this on.

I will add your header - thank you !

The filters do work - I may need to double check them incase I broke them !

Thank you for taking the time to look at it and for your feedback .


The first sync is taking a long time, is this normal?

(They recommend you to launch it at boot, so I guess it is)


This post on reddit[1] has a lot of IP addresses to bootstrap off of. [1] https://www.reddit.com/r/getaether/comments/3c1802/aether_as...


Thanks. Here's mine 71.30.200.42:59005


I'm having the same problem. Does anyone have an alternate ip and port to bootstrap from?


Reminds me of Bitcoin in 2012. Haven't experienced it since, though.


I am syncing for about 30 minutes already. I don't think it works


It works, eventually...


Rebuilding Reddit in a better way is not a technical problem.


Happy to see that it's open source, too.

https://github.com/nehbit/aether-public


Now imagine this protocol used to command and control a botnet.


Is this where we start using NNTP again yet?


Hm, downloaded on my MacOS 1.8.5 machine, but the app crashes on startup.


Is anyone using it ?


urm, a bit of a bad decision to have it say "Open this website in a desktop computer to download Aether, or join the mailing list, so you'll be reminded." with the desktop computer part bolded and italicized, like I'm an idiot that needs to be walked through these things. I'm using firefox on linux. I get that there may not be a linux client, but do your client sniffing better.

Edit: Wait, no, you have linux binaries, your github says so, so why don't they show up on the main site?


wait, why the downvote? Literally no download link even though I can actually run it: http://i.imgur.com/LVY5I9W.png


digg 3.0


Is that meant as a compliment or an insult?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: