Encrypted snapshotted remote backup
As most readers will be aware, I'm currently unemployed; as many of you have guessed, this is related more to having too many options than too few. In order to help me decide what I should do next, I'm looking for feedback from you, my readers: If an encrypted snapshotted remote backup service was available, would you pay to use it?That's a lot of buzzwords; here's what I mean by them:
- Encrypted: When you configure the client code on your system, you provide a symmetric key. All of your data is encrypted with that key before it leaves your system; this would include not only file contents, but also metadata (file names, ownership, permissions, flags, the directory structure, et cetera). Obviously you would have to keep a copy of that key somewhere safe.
- Snapshotted: Every backup you performed would behave like a full backup; but the storage space used by many snapshots would be equal to the space required by one snapshot plus the differences between the snapshots. You would be able to delete or restore from any of the snapshots efficiently regardless of how many other snapshots you had taken. (FreeBSD users will note that this is essentially the same behaviour as snapshots exhibit on the UFS2 file system.)
- Remote: The backups would be sent over the Internet, thereby protecting them from fire, theft, or any of the many other events which cause problems when a system and its backups are sitting next to each other on a table.
- Backup: You probably already know what this means. You would run "tarsnap -c ..." to create a snapshot, "tarsnap -t ..." to view the files in a snapshot (e.g., so that you could figure out when you accidentally deleted a file), and "tarsnap -x ..." to extract all or part of a snapshot. Unlike tar, of course, you would also be able to run "tarsnap -d ..." to delete a snapshot.
- Service: Instead of buying hardware for storing backups yourself, you would pay GB of bandwidth and per GB-month of storage for having your backups stored remotely. The price would most likely be around $0.25/GB-month of storage and $0.25/GB of bandwidth -- slightly higher than Amazon's Simple Storage Service, but of course S3 isn't an encrypted snapshotted backup service. :-)
As a result of my background in algorithms and security, and my experience with bsdiff and portsnap, I think I'm ideally suited to produce such a service (and more importantly, the client code which would contain all the intelligence required for it -- given that all the data would be encrypted before being sent to the backup server, there isn't much opportunity for intelligence on the server side).
If such a service existed, I would certainly use it; this should not be very surprising, since this entire idea originated with me asking myself what I would like to see in a perfect backup system. I have no desire, however, to spend a long time creating such a service if I would be its sole user -- particularly given the aforementioned employment opportunities available. So please let me know if you would use such a service; I'd also be interested to hear how many systems and what total volume of data you would want to back up, as well as any other ideas you might have for what features "a perfect backup system" should have.
UPDATE: Tarsnap now exists and is in public beta.