CloudBin
Your cloud does not need to be trusted.
Use it as a bin.
CloudBin is a privacy-first file archival tool that lets you use cloud storage without treating your cloud provider as trusted storage.
Put your files in CloudBin. CloudBin encrypts them, archives them in the cloud, verifies the archive, and safely removes the local copy.
When you need a file again, you can restore it locally with its original filename, folder structure, and fingerprint.
The cloud stores the archive. You keep control of the files.
The Idea
Cloud storage is great for storing things.
But why should the cloud provider need to be trusted with the contents of those things?
CloudBin treats cloud storage differently:
YOUR COMPUTER
│
Original files
│
▼
┌─────────┐
│ CloudBin│
└────┬────┘
│
Encrypt + Verify
│
▼
┌──────────────┐
│ Cloud "Bin" │
│ Encrypted │
│ Archive │
└──────────────┘
│
Restore when
needed
│
▼
YOUR COMPUTER
Your cloud provider becomes a place to keep the encrypted archive, not a place you have to trust with your files.
What CloudBin Does
- Watches a local
VaultDropdirectory - Encrypts files before cloud storage
- Preserves filenames and folder structure
- Creates SHA-256 fingerprints
- Uploads through
rclone crypt - Verifies the remote archive
- Stores archive metadata locally
- Removes the local file only after successful verification
- Allows the archive to be restored and verified locally
The core rule
Never remove the local file until the cloud archive has been successfully verified.
MVP
CloudBin is currently an early-stage MVP.
The current MVP supports:
- Linux
- Google Drive through rclone
- Client-side encryption with
rclone crypt - Automatic file archival
- Integrity verification
- SQLite metadata
- CLI operation
- End-to-end tested archival workflow
- PyPI installation
Quick Start
Install
python -m pip install cloudbin
Configure
rclone config
cloudbin init
Start
cloudbin start
Then place a file into your VaultDrop.
VaultDrop/
└── Documents/
└── report.pdf
CloudBin archives it while preserving:
Documents/report.pdf
The cloud receives the encrypted archive.
Built Around a Simple Principle
CloudBin separates storage from trust.
Cloud Storage
=
Where your archive lives
CloudBin
=
How your archive is protected,
verified and managed
You don't have to trust the cloud provider with your plaintext files.
Security
CloudBin uses rclone crypt for client-side encryption.
The cloud provider stores the encrypted archive rather than the original file contents.
CloudBin also maintains file fingerprints and verifies the remote archive before completing the archival operation.
Encryption credentials remain your responsibility.
See SECURITY.md.
Architecture
CloudBin CLI
│
▼
VaultDrop Watcher
│
▼
Vault Worker
│ │
▼ ▼
SQLite Rclone
Metadata Client
│
▼
rclone crypt
│
▼
Cloud Storage
See docs/ARCHITECTURE.md.
Future Milestones
CloudBin is starting with a simple idea: use the cloud as an encrypted archive, not a trusted filesystem.
The product will evolve through a few focused milestones:
01 — Better Archive Experience
- Reliable restore and recovery
- Archive browsing
- File history and status
- Better local verification
02 — Cross-Platform
- Windows support
- macOS support
- Background service
- Desktop application
03 — More Storage Choices
- Amazon S3
- OneDrive
- Dropbox
- S3-compatible storage
- Community-supported providers
04 — Privacy & Recovery
- Privacy-preserving filenames
- Metadata protection
- Archive migration
- Disaster recovery
- Import / export
05 — CloudBin Ecosystem
- Provider/plugin architecture
- Community integrations
- Automation
- Developer API
- Community-built extensions
The goal is simple: make cloud storage a place you can use without having to trust it.
Open Source
CloudBin is built in the open.
Contributions, ideas, testing, security research, documentation, and integrations are welcome.
git clone https://github.com/rcvaram/cloudbin.git
cd cloudbin
python3 -m venv venv
source venv/bin/activate
python -m pip install -e .
python -m pytest
See docs/CONTRIBUTING.md.
License
MIT License.
See LICENSE.
CloudBin
Don't trust the cloud.
Use it as a bin.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cloudbin-0.1.0.tar.gz.
File metadata
- Download URL: cloudbin-0.1.0.tar.gz
- Upload date:
- Size: 27.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2e2e793102387e8e4f291a044cb1c5ba2f7aeae09bfdfbda87e14bf6dd8af56b
|
|
| MD5 |
070a4630d94f4b832941c93b95f2fec3
|
|
| BLAKE2b-256 |
a55651f2ef20ef230484f40bba469c6d2898568339b411ea896e677921efea13
|
Provenance
The following attestation bundles were made for cloudbin-0.1.0.tar.gz:
Publisher:
publish.yml on rcvaram/cloudbin
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cloudbin-0.1.0.tar.gz -
Subject digest:
2e2e793102387e8e4f291a044cb1c5ba2f7aeae09bfdfbda87e14bf6dd8af56b - Sigstore transparency entry: 2580932030
- Sigstore integration time:
-
Permalink:
rcvaram/cloudbin@9a49267d3361348c47fa8320bfccab7bfd68ede3 -
Branch / Tag:
refs/heads/master - Owner: https://github.com/rcvaram
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@9a49267d3361348c47fa8320bfccab7bfd68ede3 -
Trigger Event:
push
-
Statement type:
File details
Details for the file cloudbin-0.1.0-py3-none-any.whl.
File metadata
- Download URL: cloudbin-0.1.0-py3-none-any.whl
- Upload date:
- Size: 25.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0366d217840be0ea5941c4e89e6a120a40ed8d01baf0de015cc167a9862573be
|
|
| MD5 |
5ab2475acc7813ebcc7a821363b7f510
|
|
| BLAKE2b-256 |
037824c26edea426ee7de2ab5cac423c629180c803c7bfda7cdad70e4d0a7757
|
Provenance
The following attestation bundles were made for cloudbin-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on rcvaram/cloudbin
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cloudbin-0.1.0-py3-none-any.whl -
Subject digest:
0366d217840be0ea5941c4e89e6a120a40ed8d01baf0de015cc167a9862573be - Sigstore transparency entry: 2580932086
- Sigstore integration time:
-
Permalink:
rcvaram/cloudbin@9a49267d3361348c47fa8320bfccab7bfd68ede3 -
Branch / Tag:
refs/heads/master - Owner: https://github.com/rcvaram
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@9a49267d3361348c47fa8320bfccab7bfd68ede3 -
Trigger Event:
push
-
Statement type: