Skip to main content

icebox - Encrypting Cold Storage Client

icebox is a command-line client for secure online file storage. All metadata is protected from unauthorized access, by using icepack for archive handling.

Supported storage backends:

  • Amazon S3 (Glacier Deep Archive storage class)
  • WebDAV
  • Local folder (for testing or third-party tools)

Installation

Requirements:

  • Python 3.8
  • age 1.0
  • OpenSSH 8.0

Install with pip or pipx:

$ pip install icebox

If pigz or pbzip2 are installed, they will be used for faster compression.

AWS credentials

Configure AWS credentials as described in the Boto documentation. The credentials should have write access to the S3 buckets you plan to use. See the example IAM policy for recommended permissions.

Usage

Help for each command can be displayed by using the --help option.

Create a new box

Create the box mybox for an S3 bucket called mybucket:

$ icebox init mybox s3 mybucket

Please note: encrypted metadata (several KB per put operation) is stored using the Standard storage class.

Create the box mybox for a WebDAV URL:

$ icebox init mybox webdav https://example.com/webdav/folder

Store data in a box

To store a file or directory, simply specify its location:

$ icebox put mybox cat-pictures/grumpy.jpg

Retrieve data from a box

There are no directories in boxes, so you just specify the original name of the source and a destination:

$ icebox get mybox grumpy.jpg -d ~/Desktop

Bulk retrievals from S3 can take a long time. To perform a Standard retrieval, use the Tier option:

$ icebox get mybox grumpy.jpg -d ~/Desktop -o Tier=Standard

Retrieval operations are tracked by icebox, so you can interrupt a pending retrieval and request the same source again later.

Delete data from a box

To delete a stored file or directory, use its original name:

$ icebox delete mybox grumpy.jpg

List data in a box

To list the contents of a box:

$ icebox list mybox

Refresh data in a box

To update local box information from the backend:

$ icebox refresh mybox

Refresh operations are tracked by icebox, so you can interrupt a refresh and continue it later.

Check the version and dependencies

$ icebox version --dependencies
icebox 1.0.0
✅ age found. (Version: v1.0.0)
✅ age-keygen found.
✅ ssh found. (Version: OpenSSH_8.2p1)
✅ ssh-keygen found.

Release files for icebox 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for icebox 1.1.0
File Size Uploaded
icebox-1.1.0.tar.gz 26.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for icebox 1.1.0
File Interpreter ABI Platform
icebox-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 51.8 kB

Release files / icebox-1.1.0.tar.gz

Download URL icebox-1.1.0.tar.gz
Size 26.1 kB
Tags Source
SHA-256 checksum
How to use checksums
abca2e044da2c950b22bcbf6d66f3add45e3b87544c58150178e0a330c09e1eb
BLAKE2b-256 checksum
How to use checksums
d0f2eea8c103594a0fb5aa7238f9f43d01c54a29741358853ecdf61534d93cec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.8.16

Release files / icebox-1.1.0-py3-none-any.whl

Download URL icebox-1.1.0-py3-none-any.whl
Size 25.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
85fe74e91f1918aeced1dc83b5b46083576a2560a969cc25ebf95135b7ab684d
BLAKE2b-256 checksum
How to use checksums
0e28ec7d258088e66f715c41c3cd492476af6bc981ea4669524bab281403e15f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.8.16

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 release files

1.0.0

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.0

2 release files

0.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page