Main Page

From Rsyncrypto

Rsyncrypto - Rsync Friendly File Encryption

Latest News

Latest Version - 1.13

November 15th 2016 A mere 8 years after the previous one, a new version of rsyncrypto has been released.

New to this release:

  • Refactored to work with OpenSSL 1.1.0
  • Upgrade the source to be C++11 compilable, if not compliant.
  • --filelist determines whether to treat the name as a directory or a file based on whether the name ends with a slash.
  • --filelist now accepts as mandatory parameter the file list source. The first argument is now the directory in relation to which relative paths are interpreted.
  • Prevent absolute paths from appearing with two leading slashes when --trim=0

Windows support dropped. Due to problems translating the Visual Studio project files from version 2008 to version 2015, I have temporarily dropped Windows support for rsyncrypto. Offers of help would be greatly appreciated on the mailing list.

-- Shachar

Site has moved

March 31st 2012

The site has moved to a new host. To reduce the upgrade costs, the content has been copied without the editing history. My apologies.

-- Shachar

Spam Anti Measures Announcement

December 1st 2008

It is with heavy heart that I need to announce that from now on it will no longer be possible to edit the wiki unless you create an account and log in. It is still possible for everyone to do so, but the wiki will no longer allow anonymous edits. At this point it is not necessary to confirm your email address in order to create an account, but should the spammers become "smarter", we will do that as well. I'm sorry about this, but I don't have the time to baby-sit the wiki from automated vandalism. Anyone with a better solution is welcome to email the rsyncrypto mailing list.

-- Shachar

Slashdot Comment Discussion

August 18th 2008

An article at slashdot raised the question of secure backup to remote server. Some of the comments suggested rsyncrypto, and some of the commenters raised some very good questions regarding the security of the algorithm and the implementation. The questions, as well as Shachar, the rsyncrypto developer, answers, may be considered an interesting read.

Latest Version - 1.12

July 23rd 2008

New to this version:

  • Use safer method to create new files
  • On Windows - better error reporting

You can get it from the download page

Why is Rsyncrypto

Sometimes it is necessary to store files on a remote server. This is typically needed for backup purposes. When that is done, there are two concerns that need to be addressed:

  1. How to keep the privacy of the files stored?
  2. How to keep bandwidth usage to a minimum?

Both problems have rather simple solutions:

  1. Encrypt the files prior to sending them. Keep the key locally.
  2. Use rsync to only transfer the changes.

There is just one problem - the two solutions contradict. Plain mode encryption of files hide the specific changes to the file, making rsync useless at detecting in-file changes. This is where rsyncrypto comes to the rescue.

What is Rsyncrypto

Rsyncrypto is a modified encryption scheme. It is based on industry standard AES for symmetric encryption, as well as RSA for having different keys for each file while allowing a single key to decrypt all files. It even uses an encryption mode that is based on CBC.

Rsyncrypto does, however, do one thing differently. It changes the encryption schema from plain CBC to a slightly modified version. This modification ensures that two almost identical files, such as the same file before an after a change, when encrypted using rsyncrypto and the same key, will produce almost identical encrypted files. This means that both objectives can be achieved simultaneously.


Rsyncrypto has won first prize in the free software trophy competition (Trophées du Libre) in the security category.


There are some tutorials on line, which might help you with your experience with rsyncrypto:

More Resources