Lots of exciting #decentralization protocols and technology out there. Some are not ready for usage, others are not following the paradigm I prefer, I love that we're spoiled for choice.

IMO I still love #SecureScuttlebutt, for me it is still the best offline-first local-first gossip protocol out there. Yes, it has dangerous corners and design issues, but it works and I can build apps with it for my friends.

I find it has pretty intractable scaling problems. So like... it works... at first. But gets bigger and slower pretty much exponentially. What was that non-blockchain network... Briar I think?

https://briarproject.org/
Secure messaging, anywhere - Briar

Secure messaging, anywhere

@cy
> What was that non-blockchain network... Briar I think?

Briar is a neat experiment, but they've never shipped apps for anything but Android. The problem with depending on one proprietary OS ought to be obvious, Goggle's recent decision to start farming Android app devs is a good example;

https://keepandroidopen.org/

So until it's cross-platform, Briar is a fun toy, but not suitable for production use.

@soapdog

Keep Android Open

Advocating for Android as a free, open platform for everyone to build apps on.

Can't say I've looked into it before. I got tired of nodejs projects back when they switched to the new module format. Good to know, at least!

In my opinion, a good project would write programs, not "ship" "apps." Dunno what one would be good though.

CC: @[email protected]

@cy
> Dunno what one would be good though

Depends on your use case/ threat model. Ask yourself questions like; who do I want to communicate with and why? Are you looking for software for an existing group/ network of people who can make and action decisions about where to communicate? Are you wanting to adopt an app to make new contacts among its current network? How sensitive are the communications? Etc, etc.

@soapdog

I just use the Fediverse, nothing else seems worth bothering with. I kind of gave up a while ago. I don't have an existing group, or anyone at all really. Met some nice people on the Fediverse though. (None of them are interested in whatever network I might propose.)

CC: @[email protected]

@cy
> I just use the Fediverse, nothing else seems worth bothering with

Same. Other than email and SMS, and occasional use of Matrix and even less often XMPP.

@soapdog

@strypey @cy the fediverse is indeed cool, but it is not the p2p I aim for. It is very costly to run an instance in terms of bandwidth and also it is server to server and that is just federation, which is cool in its own way but not comparable. It has the best of both worlds and also the worst.

@soapdog
> the fediverse is indeed cool, but it is not the p2p I aim for

Pure P2P networks have been the holy grail of every new generation of cypherpunks since the 90s. They've never worked out. Everything that's turned out to be practical for use beyond dogfooding has some kind of supernode, and that's not even a bad thing;

https://bridgeseat.substack.com/p/in-defence-of-servers

> It is very costly to run an instance in terms of bandwidth

If you use Mastodon, sure. There are much more efficient fediverse servers.

@cy

In Defence of Servers

Why pure peer-to-peer networks aren't always better than federated ones

Bridge Seat Cooperative

@strypey @soapdog @cy

dat works now.
ppl keep ignoring it, but its battle tested and mature.

@serapath @strypey @cy

Just read the thread and there are many good points in it. As I said before, I'm not here to attempt to convince any of yous or have a flamewar.

I disagree with many of the view points expressed in the thread around terming SSB as dead or extinct and claiming it is only valid if old time developers are still present. Don't forget, I wad there from the start as well. Find it mildly annoying to see it called hobby even if it was not intentional.

@serapath @strypey @cy

SSB worked back then and still works now. It has more features now than it had back then.

I also think that people in this thread are pushing requirements and constraints in SSB that were NEVER a part of SSB protocol.

SSB is a network for connecting friends. It follows the same semantics of real life social interactions and groups.

It has never been a privacy oriented protocol for adversarial situations.

When I tried it a... while ago, SSB worked fine, but slowed down and started doing a lot of disk grinding as the database grew to multiple gigabytes, and you couldn't clean out any old posts. Took a while, so many people probably haven't run into that. I also may have been doing something wrong.

CC: @[email protected] @[email protected]

@cy @strypey @soapdog

this could be fixed by rebuilding ssb on top of dat which inherently allows for sparse replication

Sparse replication, or sparse validation? You can't validate data that's not there.
@cy
both.
you of course only validate the parts you sparsly replicate and validate the rest later on.
this is what merkle proofs enable
You can delete branches from a hash tree and it'll still be a valid hash tree, though? I thought it was proof that nothing had been deleted.

@cy
you can delete branches from the tree and then nobody can get that data anymore. if you just evict it from your cache, you can re-download it from the p2p network given somebody still seeds the data.

you can also build applications where you rewrite history (feed.truncate()) ...that will increase the hypercores `.fork` counter and its detectable. use cases are when you use `autobase` to have multi writer hypercores

So... the proof is just... that the feed is the correct one for the most recently signed root hash. Nothing about only appending, or immutable, or whatever they say about Bitcoin.

@cy the latest signed root verifies all data of the log, because after appending, the new signed merkle root still includes the entire older merkle tree too.

it is immutable, because change can be detected. it would change the merkle tree hashes.

@cy ...also dat has nothing to do wih cryptocurrencies or bitcoin

@serapath
> dat has nothing to do wih cryptocurrencies or bitcoin

Something can be a blockchain without having anything to do with those, eg;

https://jami.net/the-jami-blockchain-switches-from-proof-of-work-to-proof-of-authority/

Also, as I've said before SSB is *not* a blockchain. If it was, it wouldn't be possible to delete old media ("blobs" as @soapdog called them). They would all be immutable parts of the chain, as they are in social apps that do use blockchains;

https://wiki.p2pfoundation.net/Blockchain_Social_Media_Apps

@cy

Jami

Jami facilitates share, freely and privately.

Jami

@strypey @soapdog @cy

so yes. dat can delete old blocks/blobs/data, thus not a blockchain.

blocks in dat do NOT point with a hash to a previous block like blockchains do.

the merkle tree is a parallel data structure, so dat is at most as blockchainy as ssb, but imho arguably less blockchain than ssb

The posts are on a blockchain. The "blobs" are something separate. I don't think it has any swarming for blobs, just requesting the whole blob at once. Other than that, can't remember.

CC: @[email protected] @[email protected]

@cy @soapdog @strypey

i am not sure everyone would agree with your definition of blockchain.

you are saying "git" is a blockchain.

i'm not saying its not a possible (very literal) definition, but imho most ppl think of "global consensus" mechanism where everyone can contribute blockchain inputs permisionlessly based on the rules.

...that definition makes neither dat nor ssb a blockchain

I have actually attemped to write a DVCS that used hash trees instead of git's acyclic directed graphs. That how little I like blockchains. One advantage of git though, is the blockchain is never verified. It's just used to rewind the graph node by node, and doesn't care whether it reaches the correct "initial" commit.

The whole Byzantine Consensus thing is also terrible. In addition to blockchains. I never claimed SSB had that. And Dat does not appear to have anything to do with blockchains.

@cy

yeah, there is no byzantines general problem to solve in dat, because dat is not about consensus of global state - imho thats why its not a boockchain.

git, ssb, dat
...chain blocks ... git and ssb by literally including hashes in blocks to point to previous blocks. dat doesnt, so its even less blockchain. dat has merkle tree metadata to order log entries, but thats not part of the independent log entries as such.

nine of them solve global state consensus or byzantine general issues

@cy
> Byzantine Consensus thing is also terrible. In addition to blockchains

AFAIK blockchains were defined by the BitCoin whitepaper (which I read not long after it was published). The consensus mechanism is part of the definition. If an append-only log doesn't do consensus, it isn't a blockchain. Git preceded blockchains. SSB is not one. Neither is HoloChain.

You seem to think have a much more expansive definition, and I'm really curious to know where you're basing that on.

@serapath

I'm basing it on the fact that you have a chain of blocks. What am I supposed to call it? It's odd enough that I'm limiting my definition to a chain formed by requiring the next block to have a cryptographic hash of the previous one. Limiting it further because "It's only bad if Bitcoin did it" doesn't seem wise.

CC: @[email protected]