Wikipedia for files

Arca is a shared library that people everywhere build together. Anyone can add files, anyone can search and read them, and the people who keep them safe are paid for it. No servers: every app is a relay, every byte travels over I2P, and a phone is a full participant.

NostrI2P onlyProof of KeepingPrivate paymentsLinux and Android
The Arca chest

Files vanish

Radio archives, maps, books, recordings, manuals, family photos and community records live on single servers and personal drives. They disappear when one person stops paying or one service shuts down. Arca gives files what Wikipedia gave articles.

One place to add themAnyone joins a circle and proposes files for its collections. Contributing is free.
One way to find themEvery circle publishes a catalog and a search index anyone can verify by recomputing a sample.
Many hands keeping themPeople keep copies of the collections they care about, and are paid for keeping what others also want kept.

Six ideas at the heart of Arca

Each one exists somewhere on its own. Arca is the first to put them together for files.

1

Proof of Keeping

Mining is keeping files people chose to keep. Keepers prove every day that they still hold their copies and earn marcas for it. The more meaningful data people keep, the stronger the network.

2

Circles that curate, like Wikipedia

Communities build collections together: anyone proposes, moderators accept, every version is signed. Members who dislike their moderators fork the circle with their disks the same day.

3

Every client is a relay

Identities, comments, likes and edits are Nostr events. There are no relay servers: every Arca app stores and answers them itself, over I2P, so no server ever learns an IP address.

4

Phones are full participants

The chain keeps state, not history. A phone follows headers, reads its balance with Merkle proofs and drops any block an honest node proves wrong with a few-KB fraud proof.

5

Private money, public keeping

Payments hide amounts, payer and payee (Mimblewimble with stealth outputs). What earns stays public and auditable: anyone can check that no marca was ever made from nothing.

6

Files that carry their knowledge

Each file's description and subtitles sit next to it as Talk.arca.json and Talk.en.srt. Subtitles are made on the device by whisper.cpp, so speech becomes searchable.

How a file lives in Arca

From a proposal to a library that pays the people who keep it.

Contributor Moderators Collection Keepers Global chain Readers Members Circle pool proposes, for free review and accept a signed version pack, keep, prove daily Proof of Keeping allowance, pass, member paid by the policy marcas earned serve downloads
RoleDoesGets
Readerbrowses, searches, downloadsa free daily allowance; a 24-hour pass for more
Contributorproposes files, folders and descriptionsa share of the circle's pool if its policy says so
Keeperkeeps collections on disk, proves it daily, serves downloadsmarcas through the pool, free access, pass revenue for bytes served
Moderatorreviews proposals, admits members, signs the circle's indexa share of the pool if the policy says so
Circlecurates collections under its own rulesmarcas through its members' keeping, and trust shown in search

Proof of Keeping

One coin, the marca, created only by the global chain on a fixed schedule. Its mining input is the keeping of data someone chose to keep. The rules are built so that faking it always costs more than doing it.

The replication curve

Rewards for a piece of data rise with each keeper up to ten copies, then freeze and are split among all. The incentive: be one of the first ten keepers of something worth keeping.

12345678910111213

Total reward of a piece of data by number of copies (n squared over 100 of ten copies' worth, frozen from the eleventh).

Two budgets each day

Storage 30%
Interest 70%
  • Storage pays for bytes kept, deduplicated, so even rarely read archives are kept.
  • Interest pays for what the wider library wants: keepers from other circles and paid reading, never free clicks.
  • Half of every pass is burned, so buying your own popularity always loses half.
  • Only a third of standing passes on, so rings of circles keeping each other's junk are capped at 1.5x honest earnings.

Every copy is unique

Each chunk is stored XOR a memory-hard keystream of the keeper's key. Remaking a slice costs 1,355x reading it (measured, testnet), so one disk cannot pretend to be a hundred.

Speed buys nothing

A clock names random slices once a second; a faster disk reads no more of them. A Raspberry Pi with used disks competes.

Caught within a day

Each day names one random chunk per declared partition; a missed or wrong 2 KB proof drops everything the keeper had built up.

Private by construction

Arca publishes what must be checked to be rewarded, and nothing that maps a person or a machine to a place or a time.

I2P only

No clearnet path, no relay on the internet, no server that learns an address. The pure Dart I2P node runs inside the app.

Separate profiles

Each profile has its own key and I2P address; nothing links two profiles unless their owner does.

Nothing that locates you

Latency, throughput and serving limits never leave the device. Search history and opened files stay local.

Private payments

Pedersen commitments, Bulletproof range proofs and stealth outputs: amounts, payers and payees hidden; supply still auditable by anyone.

What works today

A working prototype for Linux and Android, tested on the live I2P network and on a public test network of its own chain. Test marcas have no value.

AreaWorking nowNext
ProfilesSeveral per device, own key and I2P address, encrypted vaults, import and exportpassphrases
NetworkEmbedded I2P node, one destination per profile, self-healingper-destination tunnel pools
CollectionsCreate, edit, moderators, suggestions, follow and keep copies fetched over I2Preview queues, quotas
MediaPreviews, playback, on-device subtitles (whisper.cpp)text extraction, OCR
SearchWords in titles, paths, tags, descriptions; SHA-256 and SHA-1full text, similarity (TLSH, PDQ), circle catalogs
ChainPacking, mining, daily proofs, rewards, circles and anchors, payouts, passes, fraud proofs, light clients, private marcasan always-on public seed

Download and try it

No account, no setup: the app creates a profile and an I2P address on first launch. Join the test network from the wallet with one button (test marcas have no value).

Linux
x86-64, any recent distribution. Carries libmpv and ffmpeg, nothing to install.
arca-linux-x64.tar.gz
Unpack and run ./arca. To add it to the menu: linux/packaging/install_desktop.sh from the source.
Android
Android 7 or later. Most phones: arm64.
arca-android-arm64.apk
Older phones: armv7. Emulators: x86_64. Allow installing from your browser when asked.
Windows
Windows 10 and 11, x64.
arca-windows-x64.zip
Unzip and run arca\arca.exe. Windows may ask to confirm an app from an unknown publisher (choose More info, Run anyway).

Download once: Arca updates itself over I2P. New versions are announced with a signature by Arca's release key and travel from device to device over I2P, checked by their SHA-256; Arca downloads them in the background and installs on your click (Settings, About). Android users of 0.1.0: uninstall it once and install 0.1.1 by hand, after exporting your profile key, since 0.1.0 was signed with a temporary key.

All releases, checksums and the speech models: github.com/x1watt/arca/releases. Arca is a prototype: expect rough edges, and keep backups of files you care about.

Build from source

Build the app, open it, and you have a profile, an I2P address and a library. Join the test network from the wallet with one button.

git clone --recursive https://github.com/x1watt/arca
git clone https://github.com/x1watt/i2p-dart
cd arca/app
flutter build linux        # or: flutter build apk

Then

  • Create a collection from a folder and describe your files.
  • Share your address so others follow, comment and suggest edits.
  • Keep a copy of a collection you care about.
  • Download a speech model for subtitles in Settings.
  • In the wallet: "Take part in the test network".

Read more: the whitepaper, the architecture, running a seed node, and the draft web archive format.