Commit Graph

29 Commits

Author SHA1 Message Date
Juhani Krekelä ef96103cd4 Adjust work factor for better performance 2021-04-10 17:46:29 +03:00
Juhani Krekelä 4c8194acd2 Move to a KDF based on the same design as scrypt 2021-04-10 17:24:04 +03:00
Juhani Krekelä 80e1a7779a Ah, integer promotion rules 2021-04-10 17:20:14 +03:00
Juhani Krekelä 8c7117fef1 Finalize Makefile for release 2021-04-09 23:13:31 +03:00
Juhani Krekelä a3079f5eda Warn is passphrase file is world-readable 2021-04-09 23:08:22 +03:00
Juhani Krekelä 41a74402f0 Add support for specifying the input and output file 2021-04-09 23:00:56 +03:00
Juhani Krekelä 5393e64c18 Add support for reading passphrase from file 2021-04-09 22:54:54 +03:00
Juhani Krekelä 6079530e1d Add UI to puer 2021-04-09 22:35:10 +03:00
Juhani Krekelä 4b5ef70bce Upgrade message counter to 64 bits 2021-04-09 22:34:05 +03:00
Juhani Krekelä f445783a44 Make passphrase_prompt() return -1 on failure so that caller can clean up 2021-04-09 20:52:04 +03:00
Juhani Krekelä 0cb02aaf14 Use the correct counter values with encryption/decryption 2021-04-09 20:49:21 +03:00
Juhani Krekelä 138cc5d2f5 Make cc_{en,de}crypt stay within passed message length 2021-04-09 20:37:41 +03:00
Juhani Krekelä 4ec4a06776 Have a shared work buffer and derive the number of KDF round from size of buffer 2021-04-09 20:16:54 +03:00
Juhani Krekelä 741c0d0bb5 Add function for reading passphrase from terminal 2021-04-09 01:07:30 +03:00
Juhani Krekelä 7bf44017a4 Implement XXTEA128-CCM 2021-04-09 00:37:10 +03:00
Juhani Krekelä 900c7b4c93 Implement the KDF 2021-04-08 22:45:08 +03:00
Juhani Krekelä c9defbaafe Fix the MDC-2 implementation, again 2021-04-08 21:41:35 +03:00
Juhani Krekelä 9a0b35609b Implement (modified) HMAC 2021-04-08 21:30:09 +03:00
Juhani Krekelä 08c8d33b20 Remove derive_subkey() as it is not needed when deriving a key from passphrase 2021-04-08 20:43:56 +03:00
Juhani Krekelä d4ed30a592 Improve explanation of the XXTEA algorithm 2021-04-08 20:43:16 +03:00
Juhani Krekelä 21ed995281 Fix the implementation of MDC-2. The state is chained as the key, not as the plaintext, through the block cipher 2021-04-08 20:35:34 +03:00
Juhani Krekelä d4b2d07c6e Actually encode the number of bits in big endian 2021-04-08 20:26:59 +03:00
Juhani Krekelä cf2b617b39 C conversion to unsigned types implictly mods 2021-04-08 20:25:07 +03:00
Juhani Krekelä 264f6fd44e Add .gitignore 2021-04-05 02:17:12 +03:00
Juhani Krekelä 4da0060cbd Add Makefile 2021-04-05 02:16:58 +03:00
Juhani Krekelä 7e91a099fe += is preincrement, not postincrement 2021-04-05 02:15:57 +03:00
Juhani Krekelä debac6c434 Fix uninitialized loop variable 2021-04-05 02:15:31 +03:00
Juhani Krekelä 96f9b11cf2 Clear hash state object once hash is finalized 2021-04-04 23:17:49 +03:00
Juhani Krekelä 92041f9fbf First commit 2021-04-04 23:05:31 +03:00