Commit Graph

67 Commits

Author SHA1 Message Date
1c587be39b
Gracefully handle an *empty* argument array (argc < 1), which apparently is possible on Linux and maybe others. 2022-01-27 00:21:28 +01:00
61fa41c888
GUI: Added button to generate a random password to the "Encrypt" tab. 2021-05-08 19:53:15 +02:00
502e92ee09
Added a simple GUI front-end for Windows platform. 2021-05-04 21:35:30 +02:00
7f643ad566
Do not request more than 256 bytes of random data from getentropy() at once. 2021-04-21 16:02:25 +02:00
b7e32f5f0a
Refactored passphrase generator into a separate file. 2021-04-18 22:19:17 +02:00
46dc28f3ca
Refactored encryption/decryption routines as well as the self-test routine into separate files. 2021-04-18 15:32:37 +02:00
ff48e473a9
Print a warning when ignoring excess command-line arguments. 2021-04-11 20:55:39 +02:00
a9e1974149
Improved test cases to also verify the checksum of the ciphertext. 2021-04-10 16:37:09 +02:00
3cdfc9d9ab
Small tweak to self-test routine. 2021-04-08 02:38:01 +02:00
0e75e05fda
Small code simplification in open_files() function. 2021-04-07 02:28:26 +02:00
4ce6e5b828
Remove an incomplete (or corrupted) output file by default. 2021-04-03 19:26:15 +02:00
06f57ca483
Clean up function names. 2021-04-02 16:37:19 +02:00
471e08737b
Replaced separate encrypt() and decrypt() functions with a single process() function + added 'mode' parameter to alloc() and reset() functions. 2021-04-01 01:58:39 +02:00
163dee5e9d
Only check current clock() on every 32-th cycle, in order to limit the overhead. 2021-03-28 16:17:06 +02:00
73f2e71342
Revamped the stepping algorithm. 2021-03-27 22:41:31 +01:00
bdab06cd80
Don't require environment variable to start with "pass:" prefix + some code clean-up. 2021-03-26 01:48:30 +01:00
7fb9a517fe
Silenced some compiler warnings, found by Clang. 2021-03-24 20:23:14 +01:00
ded1220a13
Improved command-line syntax for passing the passphrase + Updated README file. 2021-03-22 22:52:00 +01:00
0b7777fc3e
More thorough cleaning of encryption/decryption state and buffers. 2021-03-21 16:46:22 +01:00
d8f446832b
Replaced some more byte-order-specific code with a byte-order-agnostic implementation. 2021-03-20 21:19:13 +01:00
2e74accf36
Don't set 'stdout' to _O_BINARY mode on Windows, because it can have some weird effect when printing text to the terminal. Also, we currently don't output any "binary" data to 'stdout' anyway. 2021-03-20 21:19:10 +01:00
fe1398fdcb
Implemented checksum based on BLAKE2s hash function. 2021-03-20 21:19:07 +01:00
b998dc5947
Obfuscate nonce in output file, by XOR'ing with the first digits of PI. 2021-03-20 21:19:01 +01:00
f250143f8b
Slightly improved cleansing of the command-line on Win32. 2021-03-20 21:18:59 +01:00
334d828c5b
Slightly improved storage of the padding size. 2021-03-20 21:18:59 +01:00
86af5fa51f
Added new option to generate a random passphrase. 2021-03-20 21:18:58 +01:00
fb4f429493
Ignore excess bytes, if length of input file is *not* an integer multiple of 8. 2021-03-20 21:18:57 +01:00
c530556e94
Implemented a simple padding scheme. 2021-03-20 21:18:56 +01:00
9d5a103201
Fixed a few warnings on Linux. 2021-03-20 21:18:52 +01:00
f889facba1
Fix for older versions of 'dd' that did not support the 'status=none' flag. 2021-03-20 21:18:51 +01:00
f3f97110f6
Automatically perform initialization when slunkcrypt_random_bytes() is called for the first time. 2021-03-20 21:18:43 +01:00
0f7c309034
Store and load the Nonce as well as the CRC checksum in a byte-order-agnostic way. 2021-03-20 21:18:42 +01:00
ec7176feba
C++ wrapper has been implemented. 2021-03-20 21:18:39 +01:00
49cc6ec674
Implemented Win32 DLL support. 2021-03-20 21:18:38 +01:00
77c2cda5ee
Added global (de)initialization functions. 2021-03-20 21:18:38 +01:00
24574712d1
Use RtlGenRandom() directly on the Windows platform. 2021-03-20 21:18:35 +01:00
39d9aab439
Some compatibility fixes for legacy MinGW and Cygwin. 2021-03-20 21:18:33 +01:00
1a31602d2a
Some code refactoring. 2021-03-20 21:18:33 +01:00
64fa094b9f
Improved signal handling on Linux/BSD. 2021-03-20 21:18:32 +01:00
aeb7d1af4a
Some compile fixes for Cygwin + improved Makefile to generate version info (on Windows). 2021-03-20 21:18:30 +01:00
23df735ba2
Updated README file. 2021-03-20 21:18:29 +01:00
20d7632fcb
Some code refactoring. 2021-03-20 21:18:28 +01:00
f671aef3d7
Renamed project to "SlunkCrypt", in order to avoid name clashes with existing projects. 2021-03-20 21:18:27 +01:00
61a7d1155e
Fixed initialization of read bytes counter in "encode" mode. 2021-03-20 21:18:26 +01:00
895b2812a6
Implemented improved SIGINT handling. 2021-03-20 21:18:25 +01:00
65ce21963b
Fixed a few warnings. 2021-03-20 21:18:24 +01:00
1b5d8a7d4c
Make it possible to read the passphrase from STDIN. 2021-03-20 21:18:22 +01:00
b820b75f5d
Fixed a name conflict on Linux. 2021-03-20 21:18:21 +01:00
15a091cc49
Some attempt to clear the passphrase command-line argument from the memory. 2021-03-20 21:18:21 +01:00
3683d2c450
Slightly improved key derivation function + allow to read passphrase from environment. 2021-03-20 21:18:19 +01:00