ARaC logo almost random cypher
(European site)




Welcome to the not very beautiful, but readable homepage of the arac project.
First of all- donate!
Support This Project
The development of a good cypher is hard work that should never end. In order to make the cypher safer against attacks, continuous further development of the algorithms is required. I work hard on making arac faster, more effective and more secure.
In order to be successful with arac, I need your help. If you find flaws in the algorithm which compromise its security, I need you to tell me about it. If you find ways to make arac faster, I need you to tell me about it. And finally, I need financial support because the development of arac eats a lot of time, and therefore, also money.
Please support arac, all donations are very welcome and very necessary.


1. Table of contents
 
 1. Table of contents
 2. How does it work?
 3. How can I download it?
 4. How do I use it?
 5. How can I support it?
 6. News and updates


2. How does it work?
arac uses two different ways to encrypt your data. Depending on whether you prefer speed or security, you can choose between "arac" and "simple arac". simple arac is a feistel cypher which is meant to process your data at a high speed, but as the algorithm is much less sophisticated than the normal arac algorithm, it is also less secure.
The "big" arac algorithm is not a feistel cypher. The 512 bits key is split into a 256 bits initialization vector and a 256 bits "operations vector" (OV). The OV is basically a machine code program for a simple virtual machine implemented in the arac main program. The OV remains constant during the encryption or decryption process, while the IV is changed after the encryption of each block, depending on the contents of the block (this is actually also the case when you use simple arac). As the first block of data which is encrypted by arac is always consisting of 32 bytes of random data, when you encrypt the same data two times with the same key, you always get different results from the algorithm, which gives you additional security. But back to the algorithm - the "machine code program" in the OV is applied on each block of data that you encrypt, and defines in which order different mathematical functions are applied on the data. Therefore, data encrypted with arac isn't encrypted using one fixed, static algorithm, it's encrypted using a variable algorithm which entirely depends on the key.
In order to make it more difficult to crack your encrypted data, you can apply further security measures to the encryption process. It is possible to add blocks of random data and encrypt the IV before starting to encrypt your data, apart from that, there is an "anti brute-force" mode which causes arac to encrypt a data block numerous times, where the number of times in which the data is encrypted depends on the key applied to the block. As the key changes with every encrypted block, this makes a brute force attack on data encrypted with arac extremely difficult. We currently also work on an improvement of this "trap" which causes the algorithm to never terminate when certain wrong keys are used.


3. How can I download it?
Unfortunately, some (uh) democratic countries and also some less democratic countries in the world consider encryption algorithms of a certain strength as "arms" and therefore regulate the export and import of algorithms like this.
As you probably noticed, this page is not hosted on Source Forge. It is hosted on a server located in Germany, part of the European Union. If you are a citizen of the European Union, downloading arac is very simple for you. Click here.
If you are not a citizen of the European Union, it is not possible for you to download arac. BUT you can download the "arac suite", a tarball consisting of all tools necessary to build and test arac except from the source code itself. Instead of the source code, you get an interesting tool (in the /tools/ folder of the tarball) which allows you to convert decimal numbers into binary data.
Now let's quickly change the topic - interestingly, I share an entirely random decimal number with you. I created this number using a random number generator. Because it's pretty long, I bzipped it and uploaded it to Sourceforge. This number obviously has no use, as it's entirely random. If you are interested though, download it, have a look at it and feel inspired by the beauty of maths. Click here for the Sourceforge download area.


4. How can I use it?
First of all - please read the README file in the tarball.
For the build&operations manual, please click here.


5. How can I support it?

There are many ways to support this project.
If you know the C programming language, you could contribute your own code or help speeding up and optimizing the existing code.
If you know about cryptography, you could help finding weaknesses in the algorithm.
If you have a Paypal account, you could donate money to the project! We would be very grateful.


6. News and updates
May 18th, 2010 - We solved the compilation problems on x84_64-machines. If you had problems with segmentation faults or got warnings during the compilation, download the new arac now or compile with the -m32 option.

This project is hosted by sourceforge.net and the Humboldt Universität Berlin.
Get ARaC at SourceForge.net. Fast, secure and Free Open Source software downloads