Big-C Canopy is a decentralized social web platform and small-c canopy is a Python package that implements IndieWeb technologies to this end.
- Angelo Gladding dev.lahacker.net
- Alice alice.example.cnpy.gdn
- Bob bob.example.cnpy.gdn
- Carol carol.example.cnpy.gdn
- / — homepage
- post types
- /sign-in — IndieAuth endpoint
- /subscriptions — WebSub endpoint
- /mentions — Webmention endpoint
- /reader — reader
- /editor — editor for all supported post types
- /search — Canopy#search search
- /actions — webactions
- /system — site settings
- simple install — one command deploys a site (Digital Ocean supported but not required)
- automated Tor — a hidden service is always spawned, even for standard domain-based installs
- automated TLS — certificates are signed by Let's Encrypt automatically, provided that a domain name is pointed properly and firewall open
Communication between IndieWeb users is first attempted over Tor where available, then over HTTPS, then over standard HTTP.
Angelo Gladding believes that a 16-digit vanity-prefixed Tor
.onion backed by a 16-digit PGP long-hash is sufficient to guarantee uniqueness for the foreseeable future.
The result is two-thirds less digits to read/verify (56 + 40 = 96 - (16 + 16) = 64 digits eliminated).
A key fingerprint is 40-digits long. 8-digit short hashes were used for a long time but have been deprecated as insecure in favor of 16-digit long hashes.
Angelo Gladding assumes in 2018 that Tor#Mining for a 16-digit prefix is infeasible. Mining for 7 is simple enough (around a day or two). Thus a 16-digit short hash would be 7 digits of chosen vanity followed by 9 random alphanumerics.
It should be possible for a determined user to spend a week or month mining with orders of magnitude more computer power. This could easily allow for 9 digits of vanity requiring only 7 digits of random.
The most recent versions of all resources + metadata are stored in a SQLite database as JSON under Full Text Search (FTS) mode. Local results are shown to all searchers. DuckDuckGo results are paired on the page when logged in as owner.
OpenSearch is supported. Using it you can register your site's search endpoint in your browser so that searches through your address bar are routed through your website.