Commit Graph
100 Commits
Author SHA1 Message Date
Leonetienne ffea2bfb5b Added module for hashing 2022-06-01 02:09:49 +02:00
Leonetienne bf8a6454ae Implemented low space-complexity stream decoding for all ioformats 2022-06-01 01:53:52 +02:00
Leonetienne 4c8c45ad04 Fix wrong minlen for base ugh 2022-06-01 01:49:10 +02:00
Leonetienne 0917e9c6cb Fix wrong minlen for base uwu 2022-05-31 22:19:01 +02:00
Leonetienne a93b3b3fe5 Sophisticated and bug-fixed DataOutput/InputLayer, and added ModuleDecryption 2022-05-31 21:40:13 +02:00
Leonetienne d9fb90a01e Now by-default prepending a newline to stdout 2022-05-31 18:26:02 +02:00
Leonetienne ba37b4325c Integrated DataOutputLayer to ModuleGenerateKey 2022-05-31 18:19:12 +02:00
Leonetienne 0ab87de23c More streamlined handling of io bases 2022-05-31 18:17:29 +02:00
Leonetienne fd75678ea3 Added encryption module, and data output layer 2022-05-31 17:35:05 +02:00
Leonetienne a00b8cc310 Fix Indentation 2022-05-31 17:07:45 +02:00
Leonetienne f979b9c187 Add additional methods to data ingestion layer 2022-05-31 15:32:17 +02:00
Leonetienne 6a14b7b428 Forbid instanciation of static classes 2022-05-31 14:28:17 +02:00
Leonetienne 2f6df42696 Implement relevant methods for DataIngestionLayer 2022-05-31 14:25:23 +02:00
Leonetienne 3823eb6cc7 Fix typo in comment 2022-05-31 10:44:05 +02:00
Leonetienne 87987f6fe2 Implement unified istream for ingestion layer 2022-05-27 18:26:48 +02:00
Leonetienne 5df625e610 Rename cmake cli target name 2022-05-27 17:21:30 +02:00
Leonetienne b9d81d1425 Change module GenerateKeyfile to more versatile GenerateKey, which doesnt have to output to a file 2022-05-27 17:21:10 +02:00
Leonetienne 93be4d9cdc Implement GenerateKeyfile module 2022-05-27 17:04:16 +02:00
Leonetienne 191b17c631 Fix Key::WriteToFile method being not const qualified 2022-05-27 17:04:05 +02:00
Leonetienne 5365233b43 A bit of cleanup 2022-05-27 16:50:18 +02:00
Leonetienne b0d0f831d9 Removed bunch of garbage from main.cpp 2022-05-27 16:14:24 +02:00
Leonetienne 186fea1383 More tests on data formatter 2022-05-27 16:08:24 +02:00
Leonetienne cf22f8c569 Added tests for recoding single blocks to all formats 2022-05-27 15:56:28 +02:00
Leonetienne 2fa67b6860 Renamed method, and added first test to cli 2022-05-27 15:34:16 +02:00
Leonetienne 612157bcac Added test project 2022-05-27 15:27:33 +02:00
Leonetienne b888585f75 A bit of error handling and better comments 2022-05-27 14:47:26 +02:00
Leonetienne 2eb0754b4e Remove unused code 2022-05-27 03:34:02 +02:00
Leonetienne 0a248b6d86 Fix multiple definition issue 2022-05-27 03:30:11 +02:00
Leonetienne 0e47b11a2c Proper include guard 2022-05-27 03:29:51 +02:00
Leonetienne 6834ea4ad8 Move blocklenght lookup table to Bases.h 2022-05-27 03:27:43 +02:00
Leonetienne 407c0ad5bc Better comment. 2022-05-27 03:01:47 +02:00
Leonetienne 2ecf0cc427 Added multiblocks methods to data formatter 2022-05-27 03:00:34 +02:00
Leonetienne 8e04e91e88 Got block conversions working... 2022-05-27 02:13:05 +02:00
Leonetienne f6d646da55 Implemented to-block methods of dataformatter 2022-05-26 23:22:04 +02:00
Leonetienne 6ac775105b Implement output formatting module 2022-05-26 22:30:59 +02:00
Leonetienne fad87e9944 Add exceptoins 2022-05-26 22:06:04 +02:00
Leonetienne dddc2d16f6 Added module PrepareKey 2022-05-26 21:56:15 +02:00
Leonetienne 8b9221e2e0 Add Configuration class to intelligently decide default settings 2022-05-26 21:32:55 +02:00
Leonetienne f28e510dba Adjust cli parameter definitions 2022-05-26 20:19:15 +02:00
Leonetienne 0f46ed7115 GCryptLib version bump 2022-05-26 19:59:16 +02:00
Leonetienne 75c4b0a0d9 More streamlined naming scheme for digestion method of ghash 2022-05-26 19:57:14 +02:00
Leonetienne f246e3a5ef Fix dangling hint 2022-05-26 19:34:58 +02:00
Leonetienne 2194ad1ce3 Fix apple linker problem 2022-05-26 19:25:40 +02:00
Leonetienne 876129f05f Added how2compile to readme 2022-05-26 19:05:35 +02:00
Leonetienne 849d34613e Add new visualizations 2022-05-26 18:59:59 +02:00
Leonetienne cad96a19a2 Fix bad filename in visualization 2022-05-26 18:59:05 +02:00
Leonetienne c0418766d9 Tidied up example/static test executables 2022-05-26 18:24:44 +02:00
Leonetienne e7c1e17e2c Got rid of flexblocks 2022-05-26 15:47:24 +02:00
Leonetienne 143ec19bf3 Many methods now using vectors of blocks instead of flexblocks 2022-05-26 15:04:39 +02:00
Leonetienne 800140bafa Added a method to GPrng to get a random uint32, which is about twice as fast as GetRandom<uint32_t> 2022-05-26 12:52:04 +02:00
Leonetienne e9377699f2 Made GPrng::GetBlock() faster by a factor of 100 2022-05-26 12:23:27 +02:00
Leonetienne 660ab5e999 Unstupided mathematical expression 2022-05-26 04:40:23 +02:00
Leonetienne c3ff7a1326 Fix markup in artifacts 2022-05-26 04:25:02 +02:00
Leonetienne 8cf8ad2628 Add artifact directory 2022-05-26 04:23:32 +02:00
Leonetienne 81a9570673 Implement direct file i/o to- and from blocks. 2022-05-26 04:22:42 +02:00
Leonetienne 101a1e0fd6 Add additional jumbling-up in feistel rounds 2022-05-26 02:44:22 +02:00
Leonetienne bc3dae96a3 Implement new sbox, reduction, and expansion function 2022-05-26 02:30:16 +02:00
Leonetienne 8ddd9d6bfb Replaced halfblock with instanciation of Basic_Block 2022-05-26 00:55:24 +02:00
Leonetienne 1f913b3a54 Typo in comment 2022-05-25 16:51:38 +02:00
Leonetienne f7d8093668 Templatified block class 2022-05-25 16:38:16 +02:00
Leonetienne 21cbd80488 Merge origin feature/relaunch into feature/relaunch 2022-05-25 14:58:40 +02:00
Leonetienne 3630243d8d Fix macos compile issue 2022-05-25 14:57:40 +02:00
Leonetienne edbf36eb6d Cipher now using new block class 2022-05-25 13:05:25 +02:00
Leonetienne b5369a3c32 Added bitshift methods to block class 2022-05-25 12:54:26 +02:00
Leonetienne 9a9cd05bed Add SetBit, and FlipBit methods to block 2022-05-24 23:51:17 +02:00
Leonetienne e552e1a6f8 Add GetBit() method to Block 2022-05-24 23:18:39 +02:00
Leonetienne db0add6e6e Implemented remaining operands for block class 2022-05-24 22:09:06 +02:00
Leonetienne 83854e42cb Fix blanklines in block.cpp 2022-05-24 01:07:00 +02:00
Leonetienne fa47a48dae Add comment 2022-05-24 01:05:45 +02:00
Leonetienne 939df4731b [Progress:] Completely re-done Block class to not use bitsets, and provide custom operators. 2022-05-24 01:02:06 +02:00
Leonetienne ed45b69342 Experimentally implement matrix-mult 2022-05-23 22:42:14 +02:00
Leonetienne 3819fbe693 Typo readme 2022-05-22 23:27:23 +02:00
Leonetienne 2815be238b Merge branch 'feature/relaunch' of gitea.leonetienne.de:leonetienne/GCrypt into feature/relaunch 2022-05-22 23:23:31 +02:00
Leonetienne 7cf55414b5 Wording readme 2022-05-22 23:22:54 +02:00
Leonetienne b873c13bf2 Fix typo in readme 2022-05-22 23:16:57 +02:00
Leonetienne 12b0f6b031 Fix typo in readme 2022-05-22 22:39:25 +02:00
Leonetienne 3978bb6b18 Fix invalid html in readme 2022-05-22 21:25:53 +02:00
Leonetienne 8c7506297f Added another visualization to readme 2022-05-22 21:22:02 +02:00
Leon Etienne 17dece8daf Put images in readme next to each other 2022-05-22 20:55:04 +02:00
Leonetienne 1e479986fc Readme and visualizations 2022-05-22 20:40:56 +02:00
Leonetienne 5677d94e6a Improved security 2022-05-22 20:13:41 +02:00
Leonetienne 19660fc696 Add method to load and save keyfiles 2022-05-22 17:54:26 +02:00
Leonetienne 88cb36fd7b Fix include guard 2022-05-22 17:54:04 +02:00
Leonetienne cd119f21bb Indentation 2022-05-22 17:32:54 +02:00
Leonetienne 91819c9723 Bump gcryptlib version 2022-05-22 17:30:15 +02:00
Leonetienne cb6c50b684 Now using actual include guards 2022-05-22 17:29:38 +02:00
Leonetienne a3c04b957f Implemented a Key::Random() method 2022-05-22 17:24:56 +02:00
Leonetienne 04c67436c4 Implemented GPrng pnrg 2022-05-22 16:54:40 +02:00
Leonetienne bedfc91e04 GHash now uses a full-size key for the cipher 2022-05-22 14:30:24 +02:00
Leonetienne fe6ec11672 Adjusted tests 2022-05-22 14:29:21 +02:00
Leonetienne 967eba2f03 Cmake make colored output 2022-05-22 14:21:21 +02:00
Leonetienne b0e0c0cd99 Moved utility functions to cpp file 2022-05-22 14:13:10 +02:00
Leonetienne fedb30bb43 Added padding direction option for Util::StringToBitblock 2022-05-22 13:54:03 +02:00
Leonetienne 9fdc642bd6 Implemented a key class 2022-05-22 13:45:40 +02:00
Leonetienne bb76cbb2d7 Renamed class GCryptWrapper to GWrapper 2022-05-22 13:07:40 +02:00
Leonetienne cf784ca8ac Renamed method DigestFlexblock to CipherFlexblock, and made it public 2022-05-22 13:04:20 +02:00
Leonetienne 734324ec10 Renamed class Hasher to GHash 2022-05-22 12:55:39 +02:00
Leonetienne 4e2f99c28e Renamed class Cipher to GCipher 2022-05-22 12:51:58 +02:00
Leonetienne 1cc01a840d Cmake specify color output as always 2022-05-22 12:51:29 +02:00
Leonetienne 29f0efbba5 Fix warning 2022-05-22 12:31:48 +02:00