CryptoBench Download Page
Simply put, CryptoBench provides a source of strong cryptographic transformations to help in the cryptanalysis process of common cryptographic schemes.
If the previous sentence doesn’t make much sense, you’ll probably find the software an odd curiosity. Something worth tinkering with for a few moments and deleting later. However, in doing so, I hope to spark enough interest in the subject of cryptography so that you’ll continue experimenting. There are many websites with valuable information, and the search engine of your preference is likely to yield hundreds of thousands (if not millions) of links. Nevertheless a couple of good places to start are PGP’s Introduction to Cryptography and the RSA Labs FAQ.
Cryptanalysis seeks to discover a method to translate encrypted information back to its unencrypted state or to “break” the security of cryptographic algorithms and protocols. However as Bruce Schneier puts it in A Self Study Course in Block-Cipher Cryptanalysis:
“…Breaking a cipher doesn’t necessarily mean finding a practical way for an eavesdropper to recover the plaintext from just the ciphertext. In academic cryptography, the rules are relaxed considerably. Breaking a cipher simply means finding a weakness in the cipher that can be exploited with a complexity less than brute-force…”.
For the most part modern cryptography is the domain of the numerical sciences, notably Discrete Mathematics, Statistics and Information Theory. Anyone seriously interested in this topic will undoubtedly benefit from academic training in those areas but, I think, their mastery isn’t a sine qua non condition to get involved in this fascinating subject.
Overall, the process of cryptanalysis entails three steps: 1) identification of the cryptographic algorithm, 2) recovery of encryption keys and 3) reconstruction of the plaintext. Most of the available literature centers around the second step but, to my knowledge, there is very little material regarding fingerprinting an encryption scheme based on ciphertext only. That’s the subject of my (hobby) research and that’s what ultimately led me to develop CryptoBench, since I couldn’t find a freely available software that will provide multiple encryption algorithms and allow for low level control of the encryption parameters.
Developing good cryptographic software is hard -very hard- so, if CryptoBench works it’s because of Wei Dai’s Crypto++ library. When it doesn’t, it’s most likely my fault.
With CryptoBench you can:
Generate 14 cryptographic hashes and 2 checksums
Encrypt and Decrypt with 29 different secret key or symmetric schemes
Encrypt, Decrypt, Sign and Verify with 6 different public key or asymmetric schemes
Terms and Conditions for Downloading CryptoBench (the software)
1. The author makes no representations about the suitability of the software or about any content or information made accessible by the software, for any purpose. The software is provided 'AS IS' without express or implied warranties, including warranties of merchantability and fitness for a particular purpose or non-infringement. The software is provided gratuitously. You assume all risks associated with its use. The author makes no representation or warranties with respect to any loss of data, functionality from the downloading, installation or use of the software. Accordingly, the author shall not be liable under any theory for any damages suffered by you or any user of the software.
2. The author shall not be liable for
(a) incidental, consequential, special or indirect damages of any sort, whether arising in tort, contract or otherwise, even if the author has been informed of the possibility of such damages, or
(b) any claim by any other party. This limitation of liability shall not apply to liability for death or personal injury to the extent applicable law prohibits such limitation.
3. The use of the software in the following countries is expressly forbidden: Afghanistan, Angola, Cuba, Iran, Iraq, Libya, North Korea, Montenegro, Rwanda, Serbia, Sudan, and Syria. If you are a citizen of, or live in, or plan to export the software to, any of the above-mentioned countries you are not allowed to download or use the software.
4. The software implements strong cryptography which is illegal in some countries. You must verify the import, export and usage laws and regulations applicable in your country with respect to cryptographic products before downloading and using the software. The author shall not be liable for any violations you make.
Before downloading the software, carefully read the terms and conditions of this agreement. By downloading the software, you are consenting to be bound by and are becoming a party to this agreement. If you do not agree to all of the terms of this agreement, do not download the software.
Download CryptoBench v1.0.1