1
0
Fork 0
Commit Graph

83 Commits

Author SHA1 Message Date
LoRd_MuldeR e9e02040df
Upgraded platform toolset to v142 (VS2019). 2022-11-14 23:03:31 +01:00
LoRd_MuldeR 57e3b0be9c
Some code-refactoring in key-generator. 2022-10-25 22:51:21 +02:00
LoRd_MuldeR 9ede99400b
Updated initialization list to use "safe" prime numbers with a minimal distance of 131. 2022-10-16 19:29:06 +02:00
LoRd_MuldeR 097957f9ab
Small code refactoring in initialization function. 2022-10-16 15:52:29 +02:00
LoRd_MuldeR 73b7131b87
Updated the C++ wrapper with new optional parameters. 2022-10-15 20:40:39 +02:00
LoRd_MuldeR b654c89dbf
Small improvement to debug logging code. 2022-10-15 15:19:28 +02:00
LoRd_MuldeR b0cd820fdf
Make debug logging optional (disabled by default) in self-test mode. 2022-10-14 22:15:36 +02:00
LoRd_MuldeR f3dc0757ab
Implemented optional debug logging. Writes to the syslog (Unix) or debugger (Windows). 2022-10-14 00:44:19 +02:00
LoRd_MuldeR 38cf7c3c25
Some code refactoring + adjust number of random skips. 2022-10-13 21:39:48 +02:00
LoRd_MuldeR 147d762ebc
Implemented modified and somewhat faster initialization code.
As this unavoidably breaks compatibility with pre-1.3.x versions, added a new flag to 'slunkparam_t' that enables backwards compatibility mode.
Also extended the self-test code to test the new initialization, in addition to the "legacy" initialization.
2022-10-13 02:26:51 +02:00
LoRd_MuldeR 968a5f7032
Enable use of getentropy() and explicit_bzero() in Cygwin build. 2022-09-24 16:20:35 +02:00
LoRd_MuldeR 3fcaa5f40c
Added build scripts for FreeBSD, Solaris and MacOS X platforms. 2022-09-23 23:27:02 +02:00
LoRd_MuldeR d988fd0a56
Added flag to indicate multi-thread support to the public API. 2022-09-23 22:21:01 +02:00
LoRd_MuldeR c4b869981f
Small improvement in initialize_once() and fixed a Clang warning. 2022-09-21 23:42:10 +02:00
LoRd_MuldeR 4383c5f858
Fixed building the library *without* pthread support. 2022-09-21 00:00:18 +02:00
LoRd_MuldeR cc4b9c8af3
Enable the "-pedantic" option for GCC + fixed a few warnings. 2022-09-20 21:53:57 +02:00
LoRd_MuldeR 17018e4f86
Added support for building SlunkCrypt for the Windows on ARM64 platform. 2022-05-24 22:31:40 +02:00
LoRd_MuldeR f18a84b6c9
Enable explicit_bzero() and getentropy() on DragonFly platform + enable explicit_bzero() on Haiku platform (requires linking against libbsd). 2022-05-08 16:46:32 +02:00
LoRd_MuldeR 207039f4f7
Small improvement to Makefile + fixed compilation with µClibc, which does *not* provide getentropy() or explicit_bzero() + enable these functions on Solaris/Illumos. 2022-05-07 17:55:03 +02:00
LoRd_MuldeR afdce47caa
Small code clean-up + improved the Makefile + detect GNU/Hurd operating system. 2022-04-23 20:25:58 +02:00
LoRd_MuldeR e78b144413
Enable the GUI to use the "AVX2" binary, if supported on the current machine. 2022-04-18 18:52:55 +02:00
LoRd_MuldeR 86b4f64f86
Updated pthreads libraries for the Windows platform (pthread4w) to version 3.0.0. 2022-04-17 01:49:03 +02:00
LoRd_MuldeR 8b1b8aec64
Added built-time option SLUNKBUILD_NOTHREADS to disable threading + added simple "testbed" script. 2022-04-10 17:34:42 +02:00
LoRd_MuldeR 70e9d2d3b5
Fixed slunkcrypt_reset() when no thread pool is allocated, e.g. when thread count is 1. 2022-04-07 00:15:07 +02:00
LoRd_MuldeR 45829c4317
Added support for setting the number threads in the GUI + some improvements application configuration handling. 2022-04-03 19:23:58 +02:00
LoRd_MuldeR 7359ce3673
Enhanced self-test routine + added macro to "safely" free SlunkCrypt instance. 2022-04-02 17:27:48 +02:00
LoRd_MuldeR 69df385d57
Detect the number of available CPU cores by using either sched_getaffinity(), GetProcessAffinityMask() or sysconf(), depending on the target platform. 2022-04-01 20:33:46 +02:00
LoRd_MuldeR 342562cf2e
Slightly improved thread management code. 2022-03-25 20:48:14 +01:00
LoRd_MuldeR f70ccb6a14
Some code refactoring in the thread pool module. 2022-03-24 21:59:43 +01:00
LoRd_MuldeR d0be7ad5a5
Make it possible to set number of threads in the front-end + updated the README file. 2022-03-24 00:06:01 +01:00
LoRd_MuldeR a4aec9f3fe
Updated pthreads library for the Windows platform (pthreads4w). 2022-03-24 00:06:01 +01:00
LoRd_MuldeR c32c85d8c9
Much improved threading support. 2022-03-22 23:01:19 +01:00
LoRd_MuldeR ddefc8c142
Initial thread support. 2022-03-21 21:11:46 +01:00
LoRd_MuldeR c63c3bffe6
Make sure that the requested number of random bytes is fully read, even if a single read() invocation returned fewer than "count" bytes. 2022-02-08 22:46:33 +01:00
LoRd_MuldeR 956e79ecc6
Increment patch version. 2022-01-27 21:51:53 +01:00
LoRd_MuldeR 801f812714
Replaced 'glibc' checks with more general 'linux' checks in order to better support alternative C libraries (e.g. musl libc). 2021-11-13 02:58:04 +01:00
LoRd_MuldeR 9e29561707
Refactored project/solution files. 2021-11-10 19:38:35 +01:00
LoRd_MuldeR 17d807bbb3
Added runtime CPU detection for SSE2 capability to the GUI front-end. 2021-11-09 23:23:43 +01:00
LoRd_MuldeR 0e65355d2f
Workaround for bug in older version of the UCRT on Windows XP: Explicitly link UCRT version 10.0.14393.0 and force the minimum required OS version to 5.1. 2021-05-10 21:21:47 +02:00
LoRd_MuldeR 502e92ee09
Added a simple GUI front-end for Windows platform. 2021-05-04 21:35:30 +02:00
LoRd_MuldeR 7f643ad566
Do not request more than 256 bytes of random data from getentropy() at once. 2021-04-21 16:02:25 +02:00
LoRd_MuldeR b63dfd1a44
Switch to using getentropy() function, because it is available on OpenBSD and it doesn't require an additional header. 2021-04-20 21:59:51 +02:00
LoRd_MuldeR 2e93d8dc28
Fall back to /dev/urandom, if compiled with getrandom() support but that syscall is not available at runtime. 2021-04-17 20:07:22 +02:00
LoRd_MuldeR a656e9de37
Refactored key-derivation code into a separate file + some code clean-up. 2021-04-17 15:13:13 +02:00
LoRd_MuldeR 102233a237
Fold the hash at the very end of the keygen loop (effectively), instead of already in the hash function. 2021-04-15 22:51:35 +02:00
LoRd_MuldeR 772c88a387
Workaround for Intel® oneAPI DPC++/C++ Compiler detection. 2021-04-11 18:26:44 +02:00
LoRd_MuldeR d76d0f6e4b
Do not use __umul128() intrinsic with MSVC, as it is not faster at all + some code clean-up. 2021-04-10 01:47:00 +02:00
LoRd_MuldeR fde0906f98
Using the 128-bit hash function, instead of 64-Bit one. 2021-04-08 02:38:00 +02:00
LoRd_MuldeR 13e9420ca1
Added MSVC configurations "Release with SSE2" and "Release with debug information". 2021-04-04 20:22:46 +02:00
LoRd_MuldeR 874a54a665
Slightly tweak stepping algorithm to include a counter. 2021-04-03 17:02:39 +02:00