This release of EverCrack utilizes a new dictionary set - lists of words divided by exact pattern (removing the searching space and increasing the cracking speed by approximately 30%).
*Please see release notes regarding dictionaries.
I have moved primary development of EverCrack to my project page:
The newest, experimental addition [which will soon come to the application] is a TTS demo. After cracking the cipher text EverCrack converts the results to speech and returns audio output [if you use this demo on my site please only use the cipher embedded in the textarea unless you have used EverCrack before and know a cipher it quickly cracks - my cpu time is precious ;)>].
I am planning on making primary releases now as add-ons to the monoalphabetic, substitution cipher cracker - I have other areas I am trying to learn and explore. Thanks again for all the support!
EverCrack is an Open Source, General Purpose Cryptanalysis Engine. I have currently added [statword] utility for analyzing the frequency distribution of words [by length] in ciphertext.
Apparently the DOS version was missing the
cw3215.dll in the releases. I have added this to
the 1.0.9 release.
The focus of this release has been more
stability and exhaustive search for cryptanalysis.
This is probably going to either be the last
release I make for this package or at least for
some time. I am going to exclusively stick to
the Linux and DOS versions for the simplicity
of modular components.
Thanks for all the feedback.
EverCrack [DOS] is an open source cryptanalysis engine.
This release reflects a continued effort in making the kernel more stable and flexible in data input. The kernel also more exhaustively searches for avenues to crack a
cipher - this mainly applies to shorter ciphers that tend
to lack redundancy and therefore information.
I have also simplified the DOS version by dividing the project into separate functional modules as I did the Linux version.
EverCrack is an Open Source, General Purpose Cryptanalysis Engine. The current version is primarily for instantaneously cracking monoalphabetic substitution ciphers [up to 4000 words].
The focus of this version has been more stability and adaption to the unix philosphy of programming. I am looking for more feedback and appreciate all that I have
I've decided to divide the functionality of EverCrack into
separate executable modules to simplify the usage.
I've also added a makefile and cleaned up a lot of the
code and directories.
Credits to David Willmore for his help in this process.
EverCrack 's virtual circuitry is now wired to near perfect efficiency for cracking monoalphabetic substitution ciphers.
The new kernel design is able to crunch the essential data of the ciphertext down to less than 15% (from approx
65%) required for instantaneous cracking.
The new design, instead of focusing on eliminating
redundant words, eliminates redundant letters, using
only that relative, essential 15% of the ciphertext to
deduce the other 85%.
Although I am always tweaking, I believe I have
reached the critical threshold for speed within the
current design framework. Now I am going to begin
investigating the next stage: polyalphabetic ciphers.
I have switched this package to the Win32 Console
although it does NOT run the menu-system of the
Like the GUI and Linux release, the major focus of
this release has been stability in face of input. The goal
is to allow the Kernel and its cryptanalytic components
to handle most any input and still output valid results
[without crashing or hanging] since ciphertext can come
in a variety of [unexpected] forms.
This version should be quite stable.
The focus of this release has primarily been improving
the stability of EverCrack.
A primary problem is the format of the input. Given
the plethora of cipher classes, I want EverCrack to be able to handle whatever is input for cracking whether the output is garbage or not [even the garbage is valid output].
Previously, EverCrack would crash if a transposition
cipher was fed a substitution cipher [with non-alpha
characters] or if the kernel was fed a multiliteral without
converting to uniliteral format [this latter is interesting to
try since it does output valid decodes - albeit garbage].
Try opening multi1.txt and then pressing Crack
without converting to uniliteral form - it takes about 8
seconds but produces what is valid according to the
Thanks to user feedback I was able to get the Linux
version compiling and working.
I added more capabilities [see LOG.TXT and README.TXT]
and armored against some flaws [file io access] and input data - previously feeding the kernel invalid input would cause it to core dump now it either stops gracefully or outputs whatever valid results it finds.
I have added some more capabilities to this package for
The frequency analysis functionality can be used for
monoalphabetic or polyalphabetic ciphers [see options
by running ">evercrack"].
The polyalphabetic frequency analysis works by splitting the ciphertext into K [key size] alphabets.
I also added the ability to identify the underlying
language of the ciphertext by referencing the IOC and
comparing against [supported] languages.
I have updated the Linux version with some more functionality.
I added a switch for analyzing the frequency distribution
of the ciphertext. You can specify a key length [number
of alphabets used] to iteratively perform a frequency analysis on every K character.
The display for monoalphabetic ciphers shows each
character, its frequency, percentile, and likely match
(as well as the standard distribution for English text
only at this time).
It also displays the Index of Coincidence, number of
characters, number of unique characters, and (based
on the IOC) the probable language underlying the
ciphertext (valid for monoalphabets only).
Specifying a key size only shows the IOC, average
IOC and probable language for each iteration of the
I am experimenting with a menu system for the DOS version of EverCrack.
I am considering at minimum to port the DOS version
to the Win32 Console for simple expanded memory and
However, the switches to activate the current DOS version will become too numerous and complex as I add
functionality. Thus, I am trying out this menu system
and hope people find it better. There is a readme.txt
explaining more. Thanks.
;added capability to convert a multiliteral, monoalphabetic
;substitution cipher into uniliteral form for cracking by the
;included two sample ciphers [multi1.txt | multi2.txt]
;usage: ./evercrack -cu multi1.txt
I have added the lexicon modification capabilities to both the DOS and Linux versions of EverCrack. This enables the user to add missing words to their lexicon set or to create a new lexicon set - as for creating a lexicon set in a language that is supported by EverCrack.
I am proud to announce the first release of a port of
EverCrack to Linux!
This first version is command-line only with basic
multi-language support [user-interface language support
only]. I will be adding on as time permits.
I developed, compiled, and tested this in the Cygwin
environment. I am not sure how the integrity of the format of the dictionaries will perservere.
Eventually I do plan on adding a graphical front-end.
Feedback welcome as always!... read more
I updated the DOS version of EverCrack for DOS. I added the new functionality that makes it faster than the original and added some basic language support [much more later].
I decided I am going to continue supporting this version for an unspecified amount of time.
;added edit control for setting a time limit [program
previously had to be killed thru task manager]
;added step-thru for frequency analyzing polyalphabetic
;ciphers updated manual and switched websites:
;added Dutch and Portuguese language support
;added dictionary-modification tool for creating a set of
;compatible with the program [primarily so i don't have to
;all the word lists with the program - but only the
;languages that are
;currently supported will be able to use this feature]
;included an operation manual accessible through
;separated the functional distinction between choosing a ... read more
Frequency Analyzer can now parse polyalphabetic
ciphers for independent frequency analysis
You can now add missing words to lexicons through
the GUI - the lexicon division process can make it
time consuming to find the appropriate list to insert
a word - now it is transparent to the user and instant-
EverCrack now provides a frequency distribution graphing module for comparing against standard frequency distributions [currently only English letter frequency distributions - and only for alpha characters].
This module is intended to aid in identifying and cryptanalyzing [in case of simple shift ciphers].
EverCrack now has GUI interface support for the following languages: English, German, French, Spanish, Italian, and
Swedish [as well as dictionaries for cracking ciphers in these languages].
Any help/support is welcome concerning discrepancies/innaccruacies for these languages.
Cracking code nor mortal ever dared to crack before...
EverCrack v1.2.6 Released!!!
Support for German language interface and dictionary
sets have been added to EverCrack. You can now crack
codes in German [dictionaries do not contain UNICODE
Be sure to read the READ FIRST and LOG