Show HN: Decentralized, Mutable, Serverless Torrent Swarm Websites
github.com
github.com
You can create either an immutable (uneditable) torrent site, or you can create a ed25519 keypair and create a mutable (updatable) torrent site.
This is great for blogging, whistle blowing, and other things. It also scales well since torrent technology is great although it had previous been pigeonholed to other use cases.
Please give it a try and let me know your thoughts! I don't take any credit for this since I just weaved the great technologies others already made together!
The best part of Federalist is reading and displaying the websites from BitTorrent using BEP-46. The Handshake part is less impressive for me personally, since it basically reads Handshake values from a service (query.hdns.io/dns-query).
If Federalist adds a Handshake daemon, it will be much more decentralized, but at the same time much heavier on resources.
For historical perspective, decentralized websites (or p2p websites) are here since like 20 years. Here's a super concise list of what I recall off the top of my head.
- Freenet is the first project I'm aware of doing that
- ENS+IPFS websites is a strong movement now (see esteroids.eth.limo, I'm a co-creator of this)
- ZeroNet was going strong like 5 years ago, and even though it's less popular now it's still functional and a nice project.
- Agregor browser brings decentralized website the Hypercore (a successor of DAT protocol)
- BitTorrent was supposed to have a project especially for decentralized websites (Maelstrom web browser), but it didn't took off eventually
- Magnetico is a search engine built on top of BitTorrent, very similar to Federalists, but without the Handshake part.
- Skynet is a project meant almost only for decentralized websites, based on Sia. They have integration with ENS, and afaik, also with Handshake (check it out!)
- Swarm, Namecoin etc. could also be used for decentralized websites. I saw some people doing demos with it, but can't recall any links/names atm.
You should absolutely take credit for your part in this. Others may have created the technologies you used, but you tied them together into something "more" than the individual pieces. There's room enough for all players to take their credit for their part in this existing.
One aspect of censorship resistance is the ability for people to publish and read content anonymously (or pseudonymously). Could you add something to the README about that threat model?
Also, I see that your IRC channel is hosted on Freenode. That seems an odd choice for a project that is opposed to censorship. Please consider a network with a better track record in that regard.
It doesn't actually allow you to publish and read anonymously without Tor or a VPN, but I will definitely recommend using both of those on the README. I do want to be careful about what is and isn't claimed, as I believe the world has become a bit dissatisfied with overclaims from decentralization projects lately.
I don't think I've come to the same conclusion about freenode (https://news.itsfoss.com/freenode-controversy/), and IRC is only decentralized if there isn't just one network anyway. I also don't think this is the right forum for this anyhow! You're definitely free to setup the same channel (#scarywater) on another network, and I'd be happy to be present there as well!
This article really obscures some facts. For example, it implies that Lee was the person providing for freenode, when in fact he was just one of many donors: most servers in the network were donated by non-profits. Likewise, the article says Freenode operators were not staff because they were not paid: they still donated their time and resources to keeping the network alive. Also, it says Freenode was "taken over" by Christel, which to my knowledge is not exactly correct: from my understanding, she was indeed granted responsibilities, but was not supposed to govern (as in, give orders) to the network.
Also, most of the drama took place after this article was published. Many chans which remained on Freenode were pushed out by the new management who seemingly ran regexes on all incoming messages, automatically taking over or banning any chan which had mentions of libera.chat. That is, until new management actually dropped the entire database (a huge "fuck you" to the faithful who remained) and started again from scratch.
All in all, Freenode's story is one of a collective project run by volunteers on their donated time/hardware turned into a top-down startup. It also seems the freenode.net homepage has been turned into some kind of newsboard without a lot of people but where lots of content appears to be "deleted". Strange new world: https://freenode.net/n/freenode/57/there-are-literally-78-us...
> IRC is only decentralized if there isn't just one network anyway.
Not exactly, as there is server-to-server federation to distribute the load (but it's not exactly decentralized in this case). But yes, decentralizing is better. But there's plenty of IRC servers where to host your chans: OFTC, tilde.chat, indymedia, hackint...
> For example, it implies that Lee was the person providing for freenode, when in fact he was just one of many donors: most servers in the network were donated by non-profits
You’re right, there were other server donors who provided servers on the network. However, the donations I provided were on a different order of magnitude financially. I provided many servers, of course, but also 7 figure funding [1]. That said, I’m definitely thankful for the server providers who were providing servers to us and continue to.
> Also, it says Freenode was "taken over" by Christel
All documentation both publicly and internally would refute this - Christel was fully in charge and the former staff was aware since it was explicitly written in the onboarding documents and on the website. Also, Tomaw was fully aware of this as well as of my ownership of freenode.
> Also, most of the drama took place after this article was published.
Again, untrue. Tomaw and I were in discussion and he was holding the network hostage for over a month prior to the article. prawnsalad of KiwiIRC and Snoonet was mediating and had had enough of Tomaw [2].
> All in all, Freenode's story is one of a collective project run by volunteers on their donated time/hardware turned into a top-down startup.
I think there is a misconception of the difficulty in running an IRC network. Given I have been a staff member off and on of other networks and continue to be on several, including on the coding teams, I can assure you that nobody would say this is a difficult time consuming thing. It’s not like open source code contribution.
Secondly, several members received monetary benefits - from me - in the form of flights, hotels, etc. like at DEFCON for example. The same people have looked me in the eye and said thank you before turning around and making up stories in a brazen attempt to slander me to take freenode. Not very upstanding people.
I think it’s pretty clear what they cared about when you review Libera months later and see that it’s a closed group run by the former freenode staffers, and they are now the oligarchs of Libera.
Finally, stop trying to force or pressure people to leave freenode. You’re acting like the Libera staff who actually spent months writing open source projects with the same falsehoods asking them to leave. It’s a form of censorship but worse it’s bullying.
As for me and freenode, we have been in legal discussion to truly decentralize the network and give it to the people - and that is what is happening. I have always been the custodian and financial supporter supporting freenode, even when the former staff was facing legal action from users who they had harassed, so this isn’t outside of my resume and track record - I obviously care about it deeply.
Freenode will belong to the people where it belongs, not the former staffers hands.
[1] http://techrights.org/2021/05/22/freenode-misinformation-or-...
[2] https://gist.github.com/prawnsalad/4ca20da6c2295ddb06c164679...
In my book, that's irrelevant. If i choose to donate personal resources to a project, it does not entitle me to any power over said project.
> fully in charge (...) my ownership
As someone who's external to both Freenode and Libera project, my understanding was that both aimed to be somewhat-horizontal projects and that such fine print was irrelevant. Much like Debian project has a DPL for some specific situations but actual decisions are taken by the base (which has pros and cons).
> Tomaw and I were in discussion...
I'm not saying there was no drama prior to the discussion. I'm saying many people who had a neutral stance on the matter were pushed to exile by your new team's aggressive actions, which you don't seem to refute.
> Finally, stop trying to force or pressure people to leave freenode.
I'm not. I'm always happy to side with an established non-profit versus an unclear business plan driven by an entrepreneur, but in this specific case i have zero balls in the game. You'll find me much more active in XMPP spaces where such concerns are non-existent because user hosting is decoupled from chatroom hosting (via s2s protocol).
> As for me and freenode, we have been in legal discussion to truly decentralize the network and give it to the people
Cool. Despite my profound disagreements on general politics, i wish you the best on this path. I've read more than a few cringy arguments for Freenode in the past months, but i believe all of us can take a turn for the better at any time. Can't wait for the non-profit to be officially registered!
That said, forget about me in this ordeal. freenode is going to the people where I always felt it belonged, and we're all in it together. :-)
Can someone tell me what is going to happen if let's say a terror group decides to use this for propaganda purposes, along the lines of religious fundamentalism/executions as we've witnessed before? Who is going to take the blame for providing them with what is advertised as an unblockable platform?
Has abuse even been factored in?
The more information people have had in the history of humanity, the more freedoms and liberties we have also had. We would likely still be living in monarchies if not for the spread of information -- North Korea is a prime example.
If information is good and people agree with it, they will consume it and the swarm will be well seeded and public consensus will have spoken. If information is bad and people disagree with it, they won't consume it and the swarm will be sparse at best, at which point, it will be easy for ISPs and others to block access to these swarms.
Torrents have been around for a long time, but terrorists haven't really utilized them much. On the other hand, anime really has to give its thanks to Bram haha.
Just because there are gun abusers, you wouldn't want to take away the 2nd amendment which keeps the government in check. The same goes for information or discourse and the 1st amendment. The day we censor ourselves is the day we throw away liberty.
I don't think this is a good comparison. The second ammendment was appended in 1791 if I'm not mistaken, i. e. shortly after the war for independence on american soil against an empire, which was fought with militias (hence the third ammendement). That's a totally different scenario than the 21st century.
It should be monitored who acquires an assault rifle. Or you end up with the highest rate of school amok per capita globally[1], because gun owners are either mentally unstable themselves or not capable of preventing a mentally unstable person from getting hold of the rifle due to a lack or knowledge. Licenses make just as much sense as they do for cars.
Which brings me to the division of powers. The constitution balances executive, legislature and judiciary in its three articles. It is very difficult for either of these organs to abuse power without being met with a restriction. This has been the concept since the very beginning, as you surely know judging by the gh handle, and you bet the federalist paper authors favored an institutional solution over arming each citizen.
In other words, the second ammendement is just as little of an ultimate for checks and balances as the web 3 is for whistleblowing. We already have securedrop and globalleaks. Going a step further is possible, but not strictly necessary, and should not be treated as such in my opinion.
[1] https://www.statista.com/statistics/1155011/number-school-sh...
This is akin to the monarchies, where a king may have risen to power as a good leader, but a later king may not have been so kind.
These things aren't perfect, but having multiple systems to pick up where other systems fail provides us the ultimate leverage in the end.
Would you take airbags out of cars because they sometimes fail and always harm those who feel their impact and chemicals and everyone is "supposed to wear seat belts by law" anyway?
I’d argue the opposite: it’s the threat of armed resistance that only works with a young government.
The idea that an armed group could overthrow the government in the US today has always struck me as fanciful. The army would shut down such an attempt very, very easily.
I'm no American but I can't really see most soldiers starting to shoot their own?
Although I should say that I am always convinced by those who say that that particular coup was staged by Erdogan as a pretext.
When the first amendment was written, they only had primitive printing presses. Obviously it does not apply to the internet, electronic printers, etc.
In any case, there is a very good argument for the first amendment changing in response to today's challenges, culture, and technology.
Tragedies are often non statistically relevant
There are "assault weapon" bans like that in my home state of California that ban certain cosmetic features on guns. These are completely pointless as an AR-15 is functionally no different from any other semi-automatic firearm.
Examples:
Assault Rifle
https://i.imgur.com/pGnxHRD.jpg
"Assault Weapon"
https://i.imgur.com/xhsZ2dK.jpg
Not an "Assault Weapon"
I ask because it isn't actually all that interesting as far as guns go.
It shoots a fairly low-power cartridge, roughly equivalent to 30-30, which means that it isn't powerful enough for deer hunting in some states. That's part of why it's easy to shoot even for XX folks. (Another part is the ergonomics; the stock and hand-grip make it easier to shoot correctly from the shoulder than most rifles.)
It's semi-auto, but so are most guns these days. It doesn't shoot any faster than other semi-autos. Standard capacity magazines aren't any larger.
It is possibly the most popular rifle of all time, certainly in the last 50+ years.
I think, as we have seen over the past ~40 years, it is very easy for either of them to abuse power. On the other hand, it is very difficult for voters to implement legislation that improves the lives of everyday people in any meaningful way. That is really what the Constitution did. It created a complex system of government with veto points around every corner to, in the words of James Madison, "protect the minority of the opulent (wealthy property owners) against the majority (the plebs)". And this is certainly how it is currently functioning. I stopped romanticizing the constitution years ago.
The US has a high rate of firearms fatalities. Around two thirds of these are suicides. Around zero thirds of them are school shootings.
School shootings are sufficiently rare that when they happen, they make national news. Which is catastrophic, because studies have shown that media coverage of school shootings induces school shootings. It's attention-seeking behavior by the criminally insane, so if you show them that it generates attention, it increases their attraction to the act. Most US media outlets know this and do it anyway, because it generates a lot of hits. This is the primary reason why the US has relatively more than other countries, including other countries with a high rate of firearms ownership.
> Licenses make just as much sense as they do for cars.
It doesn't work for this. If you have a driver's license and know it will be taken away if you drive drunk, that's an effective deterrent. School shooters tend to be young people with no prior criminal history. They would pass a background check. Having a license to take away after the fact is meaningless when after they fact they're going to prison forever.
In theory where this does something is for criminal gangs, where you say you want to deny people with a criminal history a firearm. Criminal gangs actually are a significant fraction of firearms fatalities. But here's how that works out: People with a criminal history who go back to a life of crime just get a gun through their criminal organization the same way they get the illegal drugs they're dealing.
Meanwhile, people with a criminal history who reform themselves will commonly also carry a gun, for self-defense against criminals from their past life. Laws against this don't deter it when the alternative is getting murdered. Then this otherwise reformed criminal gets caught in possession of a firearm yet not committing any other crime, so they go back to prison and get another chance to get caught up with criminals. A large number of black people are currently in prison for no other crime than "felon in possession of a firearm," and were in possession of it for no other reason than self-defense. Or weren't in possession of it at all but were near enough to one owned by someone else for a bad cop to opportunistically file the charge.
Banning possession of a technology is weak. If you wrongfully shoot someone, you should go to prison. If you have a gun and don't harm anyone with it, no one should have a problem with that.
Oh absolutely. More than one thing.
The US is structurally messed up in a dozen different ways and it puts people in a corner. People are angry and have no idea what to do about it. Undirected rage because people don't know where to direct it.
Then the media directs it to shooting up schools by plastering that all over the screen. It could just as easily be pipe bombs or political assassinations or riots.
Or something actually constructive. But actually solving the problems that many organizations exist only to mitigate means you have to fight them, and they often win. Especially when people are led to believe that supporting those organizations is the way to eliminate the problems that they now exist to preserve.
just because they can have weapons somehow is not a reason to make it very easy and legal.
> people with a criminal history who reform themselves will commonly also carry a gun, for self-defense against criminals from their past life.
Firearm are not defense tools. If someone shoot you, I don't see how it will save your life or protect you.
> Banning possession of a technology is weak. If you wrongfully shoot someone, you should go to prison. If you have a gun and don't harm anyone with it, no one should have a problem with that.
I live in a country that ban guns, and I'm not aware of a reason why it would affect anyone's life negatively. There are certainly less death by firearm though.
Laws have costs and benefits. When the benefits are not actually realized in practice, that's relevant.
> Firearm are not defense tools. If someone shoot you, I don't see how it will save your life or protect you.
If someone is trying to kill you and you kill them first, this is more likely to lead to your survival than if you just let them kill you. And if this is more likely to happen, they are more likely to not attempt to kill you at risk to their own life.
This is especially relevant for people in bad neighborhoods where the police can't be expected to do this job or provide an effective deterrent, and many of the victims are people who have a criminal history.
An obvious and common case being where you get caught committing a crime, are pressured into testifying against someone else to avoid going to prison for ten years instead of one, and then you get out of prison and they or their people are after you.
> I live in a country that ban guns, and I'm not aware of a reason why it would affect anyone's life negatively. There are certainly less death by firearm though.
Ban red cars and there may be fewer accidents involving red cars, but is that really the right metric?
Firearms are aggressively prohibited in Mexico and they have an even bigger homicide problem than the US. There is a high rate of firearms ownership in Canada, and they don't. The reason for this difference is where we should direct our attention.
I notice you haven't answered that part :)
In a country with a high violent crime rate, victims need weapons for self defense. If you outlaw guns, only outlaws will have guns.
Maybe there is a gentleman rule among firearm owners to let the other side the opportunity to shoot first, but there is always the risk of someone not following that rule.
In my country they seem to use some kind of automatic weapons, where the odds of really missing is low :) (I have seen some cars destroyed by such weapons, I'm not sure high precision is needed to be effective ^^)
I think the important question now is whether it's irresponsible to build channels that (A) terrorists will find useful, (B) will allow them to look more savvy and attractive than they actually are, (C) seed their ideas to a wider audience than they have - see [1] - and (D) count on less motivated people with nonviolent ideas and less time on their hands to offer countervailing ideologies and "win" the space. The space you're creating and enabling.
[1] People with more time on their hands and/or a more absolute/violent agenda are more apt to find ways to game a system, whether it's a swarm or a newsfeed. Their time and motivation are asymmetrical to the normal functioning of a marketplace of ideas in which good/logical ideas are supposed to outperform bad/emotional appeals. The true question is not whether this platform can or will be gamed, or trying to guess and preempt how it will be gamed, but deciding whether it's immoral to exert your intellect to give leverage to griefers by giving them more visible surface area. If the result is something that only marginally helps average people but drastically improves the lot of griefers, then the surface area you're providing them to attack everyone else will be exponentially larger than the defensible area of reasonable ideologies you hope to have counter the bad ones.
In other words, all the talk of open ideas is true in a truly open marketplace, but violence tends to fill a vacuum, and in a closed system or especially a new, empty space with experimental tooling, it is entirely possible for bad actors to drive out good ones.
It is hubris to think that only you could've conceived this idea. Eventually someone else would.
If you released, and controlled it, at least you have a way to control the spread of misinformation on it.
if the facists won the war our ideas would be the ones that desperately need to be silenced by them.
just have the battle royal of weird ideas out in the open. if the muskian forced brain chipians win we do that for a while. it only seems more stupid than say mandatory/forced experimental medication for everyone, putting people in cages for smoking weed, starvation salaries, selling cars that go faster than the speed limit. etc etc
maybe everything i wrote here is the best example of a stupid idea? should we investigate or just press delete?
So. A battle royale of weird ideas is great, but only if it's in a ring where everyone leaves their guns outside, and no one's life hangs in the balance. Otherwise it's a bunch of trolls playing dress up with someone else's clothes, burning someone else's stuff, killing someone else's kids; see Stalinism and Nazism. The current generation is lost for knowledge of history, so they don't understand the fire they're playing with every time they think imposing their correct point of view by force is the only way. It's not their fault; their parents were mostly idiots. But they only exist because some people held the fort for an arena where you could debate without existential peril to yourself or the opposite party. The framework is all. The ideas can come and go within it, and lots of seemingly stupid contradictions or compromises will arise, as you pointed out. But if any side is able to overturn the framework, then there will not be a fair battle of ideas ever again.
How could it be "worse" than Freenet or tor, where everything is completely anonymous?
Three examples from the tech world of the last two decades:
- indymedia.org has arguably been a serious inspiration for the fachosphere (although they dropped the bottom-up part) in gathering information from many places/topics
- raddle.me newsboard was developed by anarchists but the codebase ended up used by fascists
- Trump's TruthSocial is just a rebranded Mastodon, although they tried to conceal that fact in the initial stages
[0] Fascists of all stripes are famously very well-funded and supported by the industry. This is the case today (Trump, Bolsonaro, Zemmour, Le Pen..) and was the case historically, as portrayed in the "Fascism Inc" documentary: https://youtube.com/watch?v=-L5Xlgc8S2Q
Also, I don't know what you mean by "average Joes." I don't think any person is less competent than another, and I would rather help to give access to information to the people, frankly, if I thought someone did have less information.
I'm a little confused by your position on people, and afraid of your position on freedom of information and equality.
Same with this. If bad guys can be censored then so can good guys.
Asking what if some group we want to stop uses a technology misses the point. Paper can be used by terrorist to make plans for terror and communicate should we reconsider paper? Who is to blame when paper and pen are used to do things we disapprove of?
Using a private key for mutations is a great idea. I believe it is similar to how BitTorrent Live (undocumented) was implemented, where new content was added to a merkle tree. That is at least how RFC7574 proposed doing it
A few points:
- is this using webtorrent-the-library or webtorrent-the-protocol ? If it's the latter it's a bit useless. The only reason the protocol exists is to make web browsers speak a similar language as bittorrent, but both protocols are strictly different. Which means if you want to talk both you need to implement both (and fortunately webtorrent-the-library does so)
- The Readme says this is good for whistleblowing. Actually this is one of the worst ways of doing it. When using DHT you tell the whole world your IP is interested in a specific content. When using bittorrent your IP connects with other peers interested in a specific content. There is nothing easier for LE than watching a specific content of interest and see who is interested in it: journalists, sources, ... An anonymisation layer is mandatory for this use case
I'm also working on a decentralized distribution mechanism based on torrents, and while i've being working on a different architecture, the network mechanism are basically the same with a couple of differences on the network level.
In my case i'm working on a very customized version of chrome where the web api is actually available for native applications beyond Javascript.
> dmt (mutable torrent BEP-46),
Is dmt supported (made scalable?!) by the existing torrent infra structure (DHT/trackers/etc??). Sorry if this question doesnt make sense.
head
|
|- post.txt
+- prev.torrent
prev
|
|- post.txt
+- prev.torrent
You get the idea.
With the not yet widely-supported BitTorrent v2, you can just add files to a new torrent and seeders of the old torrent will seed the files that are also in the new torrent too.The words unblockable and uncensorable have been misused in the documentation.
Real-world example: 99% of my colleagues cannot bring their own devices into our corporate workplace to access torrents via DHT. There are some network rules and filters in place to block most non 443 traffic. Those 99% are effectively blocked.
Setting a remote HAProxy server to mask miscelaneous traffic as https was a practical way out through the firewall, which then exposed my HAProxy server to a block by IP rules.
This is an idea I'd love to be wrong about. Bock-resistant is the most appropriate statement for this project in its present form. Change my mind :)
Also -- and I'm unfamiliar with handshake -- but is the sort of thing that could work over ad hoc networks?
Handshake names are decentralized and on chain, so as long as you have access to read the chain, it would work over ad hoc networks as well (and offline/local).
This is the drawback of traditional decentralized networks compared to blockchain-based networks such as Sia/Skynet, where users can pay to get their files hosted with guaranteed service level.
Layer-2 systems (which allow some of the operations to happen off-chain) is how Ethereum developers are trying to scale the network capacity.
I believe you may be missing the forest for the trees by worrying about Ethereum's decentralization when compared to Handshake's.
Which is ridiculous -- it makes names unreliable as public identifiers. Sure, you can refer to Alice's site as "site.alice", but nobody else can resolve that name unless they share your configuration. Worse, it means that anyone who has a different key mapped as "alice" might see "site.alice" resolve to something completely different than what you see.
And let's be honest-- if someone on HN were to post, "OMG the security updates repo got DDOS'd in Debian" it's not like the entire comment section is going to be filled with confused responses like, "Wait, do you mean the security updates for the gitlab repo that I added for my gitlab instance, or Debian's security repo for Debian the Universal Operating System?"
Looks like Christian did a quick 4 minute synopsis here:
https://www.youtube.com/watch?v=bB9SC4kD27Y
If you like the idea of both the decentralized resolution and using the DHT as a PIR, you might look into it.
Also-- if you find it's the case that it's not currently usable (which I'm guessing is the case), it might be worthwhile to mention on your README that you looked at this as an option and then briefly state the reason(s) why you can't use it in practice. If enough prospective users of gnunet do this it may motivate the maintainers to do something about the current state of the documentation and usability...
I'm OK with this (and that's more or less what IPFS does), you only need to pin a couple hashes, and one could build a website directory using this project. Or even a recursive DNS with zone delegation to other mutable torrents.
I like the idea of outgoing links being other hashes.
ENS domains can be resolved to Ethereum wallet addresses, IPFS, Bitcoin addresses or any other public key or string.
Basically ENS boils down to being a subdomain provider with ICANN-like governance, an illusion to 'decentralization'.
The three letter code is not currently used by Ethiopia (they use .et and .com.et), and the ENS team is in negotiations with Ethiopia for the 3 letter TLD: https://www.olipso.com/en/domain-search/ethiopia https://twitter.com/BrantlyMillegan/status/14632165646149672...
The contracts themselves are immutable. ENS domains are NFTs. You should read the code and understand the actual structure of it before criticizing it.
Did I say 'used'? I said 'reserved' and the ENS team knows it is 'reserved' FOR Ethiopia, otherwise why are they negotiating specifically with them in the first place?
Relying on 'trusting' a so-called 'DAO' with all .eth domains sitting under the root multisig control is no different to trusting a subdomain provider with ICANN-like governance but this time, they're using a 'blockchain'.
All of the above sounds like a great 'illusion' to decentralization. I expect ENS to be no different to ICANN governance given that they can have full control over any of the domains on the ENS root. [0]
[0] https://docs.ens.domains/frequently-asked-questions#who-owns...
I do think that the https://getdweb.net/ community is a model of how that crossover can work. It's also something I think a lot about at FFDW, which because of IPFS and Filecoin, has its feet in both camps.
There is actually a ton of interesting and useful innovation happening in the crypto space that isn’t necessarily crypto-specific. If hacker news wasn’t so die-hard anti-crypto then more people would see that.
- zero-knowledge proofs
- quadratic funding
- verkle trees
- etc.
Subsequently, how else besides using a crypto coin would it be feasible for a decentralized network to take payment?
Requiring some form of payment is fine, but I’d like the ‘currency’ to be locked into the network so it doesn’t become something you can trade.
Maybe contribute to the network in exchange for a balance, that you can then exchange for domains after which it’s gone.
Ideally also figure out a way to limit people simply creating many accounts and using that, guess you can require upkeep for all domains, so when you stop contributing they disappear.
Also, what kind of consensus mechanism would you use, with the understanding that without a way to transfer/sell balances, Proof of Work degenerates quickly into a 51% attack, and Proof of Stake is infeasible? Or do you have a different idea in mind to decentralize such a system?
I'm asking these questions because knowing what I do about decentralized systems, in the end I can't see any way around a system like this having transferable balances. Either that or you centralize the part of it that keeps track of the network's history, making it basically akin to a big git repository.
I don’t think this is possible in the first place. Someone will always be able to go around the system entirely and give someone their entire account. If somone wishes to sell all their names at the same time (or make one account per domain so they can sell it), there’s little to prevent that. I think making it harder is probably more trouble than it is worth for most malicious actors though (especially as they have to work with each individual account to retain the domains).
As to consensus mechanism, I have no idea. I don’t have enough experience with such systems to say one way or another.
You've just described handshake - when you purchase a domain, the coins are burned in exchange for the domain.
So I see the address in the screenshot starts with federalist://
Is it possible to access these sites with a normal web browser from the internet too?
There it should have a torrent info payload that your client can turn into a ordinary torrent, where you can proceed to download the files, and can open in your browser on your local filesystem.
I do think there is a way - since the beautiful WebTorrent (https://github.com/webtorrent/webtorrent) can do so in browser. I'm keen to see something like this in a normal web browser (if possible as an extension even), hopefully developed by someone with better skills than me haha!
It's an exciting project.
git clone https://github.com/publiusfederalist/federalist
cd federalist
npm install
npm start
For publius, there are two options, I'll start with option 1, which is an immutable (no updates) model:
git clone https://github.com/publiusfederalist/publius
cd publius
npm install webtorrent supercop.js
./key
./publius &
Then you can either share that magnet link/browse that link, or take the further step to add it as a TXT record on the Handshake blockchain for a name.
If you would like to do it mutably, there is an additional step:
./seed &
Then, you can share the link created by this and create the TXT record with this one instead.
When you update your blog, you can edit the files in the web3root folder, and then simply restart publius and seed.
Could this support user authentication for uploading content? Maybe with something like metamask?
Using this tech to make a medium/substack/twitter-style site would lower the barrier to entry for non-technical journalists.
> In the browser, WebTorrent can only download torrents that are seeded by a WebRTC-capable torrent client.
I'm very thankful to WebTorrent, DMT, Handshake and Electron for making things possible.
The only two kinds of successful content types that I’m aware of are pirated movies on Torrent and cryptocurrencies on the blockchain. They all depend on centralized discovery(torrent websites and exchanges).
Which makes me wonder, are these decentralized websites or social media platforms attacking the right problems?
It's an alternative transport, not application layer. If you can imagine doing anything with the world wide web , or ftp, you can imagine what this is for. It can transport hypertext files around, or whatever other file type you want.
In the web case, it'd just be some local http files you could open in a local file origin. There'd be no server. But that's still a way to exchange whatever art or media you could ever imagine.
We are bounded only by imagination. The internet is built around the Internet Protocol (IP), a way of streaming data arbitrarily from one computer to another. It has been up to us to imagine uses, to chase new possibilities. What do you think the use cases for IP are? Can you see what that made possible? Your question is in effect that, and trying to grasp at how broad, how possible, how potentiated this great work is is dauntingly hard, for we could share any type of content we want with either.
It shouldn't be possible for you to end up with nowhere to speak, that's why the public square exists, and I accept there is a need for an online public square that is currently pseudo-fufilled by private social media sites, but that doesn't mean deplatforming is bad.
Freedom of expression includes the freedom not to endorse or express an idea, and platforms shouldn't be forced to allow people to use them to amplify their speech, as then that right is violated, enforced expression is just as harmful as enforced silence.
"The problem isn't deplatforming -- it's the lack of places where deplatforming is prohibited."
This goes for a lot of things. It would be a problem if there was nowhere you could urinate, but that doesn't make rules against urinating in the street bad.
It is important that there are places you can't be censored, but that doesn't mean every place should be forced to be unfiltered firehoses. Curation has value. Should every newspaper be forced to platform anyone who sends them an article?
Enforced speech is just as harmful as prohibited speech. People should have the right to choose who they platform.
> It would be a problem if there was nowhere you could urinate, but that doesn't make rules against urinating in the street bad.
If you couldn't urinate anywhere legally, you wouldn't consider the laws against urination a problem?
https://github.com/publiusfederalist/federalist/blob/3670867...
It's temporarily using hdns.io as many people still do not have an hsd node installed. A later version will be shipped with a light weight SPV resolver, at which point, the last piece of the puzzle will be complete.
As such, what is the use case?
Everything, of course, can be blocked at some point, but the thing to remember is that there are other kinds of contracts that existed long before smart contracts - and these things are already leveraged in society.
The internet isn't going to disappear tomorrow, but I would agree there are longer term risks, so let's build today.
There's been a lot of talk about decentralization lately, and Cypherpunks write code. So I wrote code instead of a blog post.
I also don't think it's accurate. Handshake is a cryptographically certified way of establishing identity . Since torrents are now mutable via handshake, it seems like webtorrents can be updated & moved as needed. Further, peer-exchange processes mean that having the initial seeds up probably isn't even a requirement. Even if one particular ip address or site gets cut down, the swarm can use other webtorrent trackers to re-spawn & carry-on.
Aside from your criticism being either inaccureate or misleading, I'd also say the use case doesn't need to, imo, be 100% perfect in every way to be worthwhile. I'm glad someone did seek better, & bothered. A decentralized, updateable, browser-based torrent is incredible leap for a web of data, for interconnection. Even if it's not 100% completely uncensorable, it's many leaps in the right direction, towards decentralization. Especially decentralization without coordination/consensus, which I think is great & vast improvement over the harsh & strict type of computing that *coins have dominated the field with. This work is far more interesting to me.
The project is marketed as unblockable, etc and yet we both conclude it is blockable from the start with existing network management tools that are deployed in places like Iran and China.
I was asking a genuine question of use case.