Secure Scuttlebutt
{{Short description|Decentralized social network}}
{{About|the communication protocol|the slang term|Scuttlebutt}}
{{Use dmy dates|date=January 2017}}
{{Infobox software
| name = Secure Scuttlebutt
| logo =
| author = Dominic Tarr{{cite web|url=https://github.com/ssbc/ssb-db/commit/d8420a185439587990c8b752780096e3f6373c28|date=11 May 2014|title=Initial commit |publisher=GitHub|access-date=17 January 2019}}
| developer = Secure Scuttlebutt Consortium{{cite web|url=https://github.com/ssbc/|date=2019|title=Secure Scuttlebutt Consortium|publisher=GitHub|access-date=17 January 2019}}
| released = {{Start date and age|2014|05|11|df=yes}}
| repo = {{URL|github.com/ssbc/ssb-server}}
| programming language = JavaScript
| operating system = macOS, Linux, Windows
| language = English
| genre = Distributed social network, protocol, secure communication
| license = MIT license
| website = {{Official URL}}
}}
Secure Scuttlebutt (SSB) is a peer-to peer communication protocol, mesh network, and self-hosted social media ecosystem.{{Cite book|last1=Tarr|first1=Dominic|last2=Lavoie|first2=Erick|last3=Meyer|first3=Aljoscha|last4=Tschudin|first4=Christian|title=Proceedings of the 6th ACM Conference on Information-Centric Networking |chapter=Secure Scuttlebutt: An Identity-Centric Protocol for Subjective and Decentralized Applications |date=September 2019|series=ICN '19|pages=1–11|doi=10.1145/3357150.3357396|isbn=9781450369701 |doi-access=free}}{{Cite web|url=https://hacks.mozilla.org/2018/08/dweb-social-feeds-with-secure-scuttlebutt|title=Dweb: Social Feeds with Secure Scuttlebutt – Mozilla Hacks - the Web developer blog|website=Mozilla Hacks – the Web developer blog|language=en-US|access-date=2019-07-16}} Each user hosts their own content and the content of the peers they follow, which provides fault tolerance and eventual consistency.{{Cite web|url=https://ssbc.github.io/scuttlebutt-protocol-guide/|title=Scuttlebutt Protocol Guide|website=ssbc.github.io|access-date=2019-07-16}} Messages are digitally signed and added to an append-only list of messages published by an author.{{Cite web|url=https://www.theatlantic.com/technology/archive/2017/05/meet-the-counterantidisintermediationists/527553/|title=The Nomad Who's Exploding the Internet Into Pieces|last=Bogost|first=Ian|author-link=Ian Bogost|date=2017-05-22|website=The Atlantic|language=en-US|access-date=2019-07-16}} SSB is primarily used for implementing distributed social networks, and utilizes cryptography to assure that content remains unforged as it is propagated through the network.{{Cite web|url=https://www.scuttlebutt.nz/|title=Introduction · GitBook|website=www.scuttlebutt.nz|access-date=2019-07-16}}{{Cite news|url=https://www.inthemesh.com/archive/secure-scuttlebutt-facebook-alternative/|title=In The Mesh - Scuttlebutt, A Decentralized Alternative To Facebook|date=2018-04-19|website=In the Mesh|language=en|access-date=2019-07-16}}
In contrast to the major corporate social media platforms, user data and content on Secure Scuttlebutt is not monetized, there are no software design decisions being made in order to maximize user engagement or boost marketing metrics, and there is no paid advertising.{{cite web |last1=Mannell |first1=Kate |last2=Smith |first2=Eden T. |title=It's hard to imagine better social media alternatives, but Scuttlebutt shows change is possible |url=https://theconversation.com/its-hard-to-imagine-better-social-media-alternatives-but-scuttlebutt-shows-change-is-possible-190351 |website=The Conversation |access-date=28 September 2022 |archive-url=https://web.archive.org/web/20220928033757/https://theconversation.com/its-hard-to-imagine-better-social-media-alternatives-but-scuttlebutt-shows-change-is-possible-190351 |archive-date=September 28, 2022 |date=September 14, 2022 |url-status=live}} According to Forbes, "Scuttlebutt itself isn't supported by venture capital. Instead ... Scuttlebutt is backed by grants that helped jump-start the process ... [and] there are now hundreds of users who personally donate to the cause and an estimated 30,000 people using one of at least six social networks on the protocol".{{cite web |last1=del Castillo |first1=Michael |title=Jack Dorsey's Former Boss Is Building A Decentralized Twitter |url=https://www.forbes.com/sites/michaeldelcastillo/2022/09/11/jack-dorseys-former-boss-is-building-a-decentralized-twitter/ |website=Forbes |access-date=15 October 2022 |archive-url=https://web.archive.org/web/20221015070026/https://www.forbes.com/sites/michaeldelcastillo/2022/09/11/jack-dorseys-former-boss-is-building-a-decentralized-twitter/ |archive-date=October 15, 2022 |date=September 11, 2022 |url-status=live}}
History
{{File sharing sidebar}}
SSB was created by Dominic Tarr in 2014 as part of experimental development in alternative databases and distributed systems.{{cn|date=June 2023}} Tarr lived on a sailboat with unreliable internet connection, and became interested in creating an offline-friendly secure gossip protocol for social networking.{{cite web |last1=Anadiotis |first1=George |title=Manyverse and Scuttlebutt: a human-centric technology stack for social applications |url=https://www.zdnet.com/article/manyverse-and-scuttlebutt-a-human-centric-technology-stack-for-social-applications/ |website=ZDNet |access-date=20 January 2019}} The word scuttlebutt is slang for "water-cooler gossip" among sailors. SSB gained popularity on the wave of privacy controversies raising against the traditional social media.{{Cite web|url=https://scuttlebot.io/more/protocols/secure-scuttlebutt.html|title=Secure Scuttlebutt - Scuttlebot|website=scuttlebot.io|access-date=2019-07-16}}{{Cite web|url=https://www.facebookcollapse.com/2018-05-22-open-source-alternative-to-facebook-called-scuttlebutt-gaining-prominence.html|title=Open-source alternative to Facebook called Scuttlebutt gaining prominence|website=Facebook Collapse|language=en-US|access-date=2019-07-16}}
Protocol
Secure Scuttlebutt operates as a database of immutable append-only feeds, which allows resilient replication over the Internet, local area networks, and sneakernets. Messages are hashed with SHA256 and verified with an Ed25519 signature; this makes it impossible to forge a message without the private key of the author.{{Cite journal|last=Tschudin|first=Christian F.|date=May 2019|title=A Broadcast-Only Communication ModelBased on Replicated Append-Only Logs|url=https://ccronline.sigcomm.org/wp-content/uploads/2019/05/acmdl19-295.pdf|journal=ACM Computer Communication Review|volume=49 |issue=2 |pages=37–43 |doi=10.1145/3336937.3336943 |s2cid=167217579 }} Users only download messages from peers that they follow (and optionally friends of friends), which prevents harassment and spam. This makes the network invite-only, meaning that new peers who join the network aren't visible until someone follows them.{{Cite web|url=https://miguelmota.com/blog/getting-started-with-secure-scuttlebutt/|title=Getting Started with Secure Scuttlebutt (SSB) » Miguel Mota {{!}} Software Developer|website=miguelmota.com|access-date=2019-07-16}}{{Cite web|url=https://people.kernel.org/monsieuricon/patches-carved-into-developer-sigchains|title=Patches carved into developer sigchains|last=Ryabitsev|first=Konstantin|date=2019-07-05|website=Konstantin Ryabitsev|language=en|access-date=2019-07-16}}
User content in SSB is organized as an append-only sequence of immutable messages, where messages cryptographically sign adjacent messages for the purpose of guaranteeing unforgeability of the sequences as they are replicated to other peers. SSB peers exchange asymmetric keys and establish authenticated connections between each other using an Authenticated Key Exchange protocol, Secret Handshake.{{cite web |last1=Tarr |first1=Dominic |title=Designing a Secret Handshake: Authenticated Key Exchange as a Capability System |url=https://dominictarr.github.io/secret-handshake-paper/shs.pdf |website=GitHub |access-date=20 January 2019}}
Applications and documentation
The reference implementation was written using Node.js, as code that runs on a JavaScript engine.{{Citation|title=The gossip and replication server for Secure Scuttlebutt: a distributed social network|date=2019-07-16|url=https://github.com/ssbc/ssb-server|publisher=Secure Scuttlebutt Consortium|access-date=2019-07-16}} There are active implementation efforts in the Go programming language, as well as in Python, and Rust.{{Citation|title=A full-stack implementation of secure-scuttlebutt using the Go programming language.|date=2019-07-15|url=https://github.com/cryptoscope/ssb|publisher=cryptoscope|access-date=2019-07-16}}{{Citation|last=Ferreira|first=Pedro|title=Secure Scuttlebutt protocol suite implementation in Python: pferreir/pyssb|date=2019-06-14|url=https://github.com/pferreir/pyssb|access-date=2019-07-16}}{{Citation|title=meta information about the Sunrise Choir|date=2019-06-18|url=https://github.com/sunrise-choir/meta|publisher=Sunrise Choir|access-date=2019-07-16}} Documentation for these implementations can be found at the official SSB development site.
Many independent applications have been implemented on SSB, including a social network, music sharing, chess, a Git subsystem, and an npm registry.{{Cite web|url=https://www.scuttlebutt.nz/applications|title=Applications · GitBook|website=www.scuttlebutt.nz|access-date=2019-07-16}}{{Cite web|url=https://staltz.com/an-off-grid-social-network.html|title=André Staltz - An off-grid social network|website=staltz.com|access-date=2019-07-16}}{{Citation|last=noffle|title=Installing & using npm with secure scuttlebutt|date=2019-07-03|url=https://github.com/noffle/ssb-npm-101|access-date=2019-07-16}}{{Cite web|url=https://infourminutes.co/whitepaper/scuttlebutt|title=Whitepaper In Four Minutes - Secure Scuttlebutt (SSB)|website=infourminutes.co|access-date=2019-07-16}}
See also
References
{{reflist}}
Further reading
{{Refbegin}}
- {{cite journal |last1=Mannell |first1=Kate |last2=Smith |first2=Eden T. |title=Alternative Social Media and the Complexities of a More Participatory Culture: A View From Scuttlebutt |journal=Social Media + Society |date=July–September 2022 |volume=8 |issue=3 |doi=10.1177/20563051221122448 |publisher=SAGE Publications Ltd|s2cid=252145979 |doi-access=free }}
{{Refend}}