In this article, we discuss a distributed system in which a single Windows machine controls a Linux cluster. We implemented this system as a part of an investigation into the security of block ciphers. In particular, we were analyzing block ciphers as to their suitability to act as random number generators. To this end, we used the NIST statistical suite for testing the randomness of specific data sets (csrc.nist.gov/rng). For each data set, we performed 188 different statistical tests, measuring the percentage of the tests each cipher passes. The two main parameters we were changing were the keys and plaintext. To generate and analyze the data, we built "System1" under Windows on a single machine. This system was easily able to process megabytes of generated data for our analysis.
Before long, however, the number and size of the data sets increased dramatically (as we decided to study the randomness of block cipher modes of operation), and System1 could no longer analyze data in a timely and reasonable manner. Consequently, we then built "System2," a Linux-based cluster that works in parallel on several machines to analyze hundreds of gigabytes of data; see Figure 1.