1 2Changes from shallot to eschalot-1.2.0: 3 4* Support both BSD and GNU makes; 5* Combined (for now) the source files into one to ease code shuffling; 6* Adjusted includes a bit; 7* Dropped the automatic CPUs detection and some options; 8* Simplified the code somewhat; 9* Limited public exponent 'e' to 4 bytes long (performance gain); 10* Removed some defines, added some new ones; 11* Rewrote base32 encoding function to improve performance; 12* Rewrote error handling and diagnostic messages handling; 13* Rewrote error handling and diagnostic messages handling again because 14 Linux has poor support for BSD's err(3) family of functions; 15* Rearranged the code to be more in line with style(9); 16 17* Changed a bunch of stuff, experimented for a few weeks, put it on hold 18 for some time, lost track of all the changes... 19 20* Imlemented three search modes: single prefix, regular expression, 21 and wordlist search; 22* Changed the wordlist mode to be more universal - massive performance 23 gains compared to the first few versions. Settled on some kind of 24 hybrid hashed tree for the words storage; 25* Wrote a word generator (worgen) to simplify making custom wordlists; 26* Reworked args and options handling - using getopt now; 27* Added ifdefs and local versions of strnlen and a htobe32 macro to please 28 Linuxes and FreeBSD; 29* Added a check for memory corruption (or some other bug - not sure yet); 30* Added a routine to generate the final onion name from the final 31 RSA key using the same procedure as the official tor project; 32* Checked the source with several versions of gcc, with pcc, and 33 with clang static analizer on OpenBSD, DragonFlyBSD, FreeBSD, and Linux 34 on 32 and 64bit platforms and on little and big endian platforms, 35 fixed the errors and warnings found. 36 37 38 39Changed from shallot-0.0.2 to shallot-0.0.3: 40 41* Fixed some memory leaks. 42* More efficient use of memory. 43* Added '-o' option to optimize prime size for SHA-1 hashing. 44 45 46 47Changed from shallot-0.0.1 to shallot-0.0.2: 48 49* Corrected some things in the README. 50* Removed redundant PEM generation. 51* Improved SHA-1 hashing performance. 52* The previous two performance enhancements give us a ~4.6x speed boost. 53 That's right, ~4.6 TIMES as fast. 54* Added a "sanity" limit to e, so it doesn't get insanely high during 55 long hashing sessions. It's adjustable, too. 56* Allowed the number of threads to be specified during startup. 57* Added a "monitor" mode (try it out! -m) 58* Added an option to automatically daemonize 59* Added file output option 60* Added a verbose flag (for debugging) 61* Now configures for BSD-style build on OS X. 62* Allows for building on unidentified systems, in a slightly crippled form 63 (defaults to 1 thread unless specified). 64* OpenBSD is now officially supported and tested (it lacks support 65 for sysctlbyname(3), wtf?). 66* Removed a (small) buffer overflow. 67 68 69 70Changes from onionhash-0.0.2 to shallot-0.0.1: 71 72* Fixed a 1KB memory leak. 73* Removed irrelevant code. 74* Brute force loop no longer mallocs/frees, giving a ~1% increase in 75 hashing speed. 76* Now completely multithreaded, allowing systems with several CPUs to 77 take full advantage of all of them to hash! 78* Now follows PKCS#1 v2.1 for satisfactory public keys 79 (previously on a version prior to v2.0, i.e. v1.5). 80* BSD and Linux ports (required due to autodetecting core count). 81 82