Commit Graph

  • 797a5428cc Add Padder<>. A CRTP base for padding algorithms. pad hashlag 2026-02-08 23:44:51 +03:00
  • 5baede0a1d Rename PadPkcs7 --> PadderPkcs7. hashlag 2026-02-08 23:31:24 +03:00
  • 2a3185406b Add PKCS#7 padding implementation. hashlag 2026-02-08 23:05:57 +03:00
  • 0647a7c3dc DesEncryptor/DesDecryptor: expose key type. main hashlag 2026-02-08 02:57:00 +03:00
  • 7c86d704b7 Merge branch 'block-expose-key-size' hashlag 2026-02-07 18:14:09 +03:00
  • 9f6265395d DesCryptTests: Replace magic const 8 (where used as the key length) with DesCrypt::KeySize. hashlag 2026-02-07 18:09:42 +03:00
  • 151c93560c Expose DES key size through DesCrypt, DesCrypt::Encryptor, DesCrypt::Decryptor. hashlag 2026-02-07 18:02:27 +03:00
  • 3059bd4c66 Make SeArray::Size() static. hashlag 2026-02-07 17:54:37 +03:00
  • ccf1397595 Merge branch 'exception-tests' hashlag 2026-02-06 18:18:45 +03:00
  • 6a09d81ae2 Add ChaosExceptionTests. hashlag 2026-02-06 18:05:57 +03:00
  • b4f015f501 Compile tests with -Wunused -Werror=unused. hashlag 2026-02-05 16:16:38 +03:00
  • 95e74db6ec Perform aggregate zero-init instead of .fill(0) where appropriate. hashlag 2026-02-05 00:40:55 +03:00
  • ed22d29af0 Merge branch 'explicit-bounds' hashlag 2026-02-04 23:52:50 +03:00
  • 65eb51c133 Remove unused CrunchUInt64() overload. hashlag 2026-02-04 23:47:45 +03:00
  • b34fda75ef DesCryptTests: IteratorUsage tests: Add testcases with begin == end. hashlag 2026-02-04 23:37:05 +03:00
  • 15d841893c IteratorUsage tests: Add some canary nulled space before begin. hashlag 2026-02-04 23:31:14 +03:00
  • 5fd27cd7b5 Merge branch 'stream-bounds-tests' into explicit-bounds hashlag 2026-02-04 01:02:56 +03:00
  • 1bf91a90d0 Add Arc4CryptTests, DecryptOutIteratorUsageTest. hashlag 2026-02-04 01:01:54 +03:00
  • 2d64389d66 Add Arc4CryptTests, EncryptOutIteratorUsageTest. hashlag 2026-02-04 00:43:40 +03:00
  • ccdf14d31a Add Arc4GenTests, GenerateOutIteratorUsageTest. hashlag 2026-02-04 00:25:15 +03:00
  • 9734f9a517 Merge branch 'block-exp-bounds' into explicit-bounds hashlag 2026-02-02 01:51:58 +03:00
  • 3de69d3298 Fix assertion style. hashlag 2026-02-02 01:15:38 +03:00
  • a0f17ea127 Decryptor: Require end of the output span to be indicated explicitly. hashlag 2026-02-02 01:10:22 +03:00
  • 67709e5361 Encryptor: Require end of the output span to be indicated explicitly. hashlag 2026-02-02 00:52:08 +03:00
  • d194fef1af Mark all Block::Decryptor<> methods const. hashlag 2026-02-01 00:24:50 +03:00
  • cdcab2f4f7 Mark all Block::Encryptor<> methods const. hashlag 2026-01-31 23:56:25 +03:00
  • a97826da88 Expose block sizes of block ciphers. hashlag 2026-01-31 19:26:51 +03:00
  • 8897d7a910 Merge branch 'block-cipher' hashlag 2026-01-31 18:50:10 +03:00
  • 73c455901b Introduce Block::Decryptor<> CRTP base class. hashlag 2026-01-31 18:35:23 +03:00
  • 4cf79b61ad Introduce Block::Encryptor<> CRTP base class. hashlag 2026-01-31 18:12:43 +03:00
  • ba70abd2af Rename DesCrypt::Encryptor --> DesEncryptor, DesCrypt::Decryptor --> DesDecryptor. hashlag 2026-01-31 17:18:25 +03:00
  • 9a3b6edfc3 Rename DesCrypt::Encryptor --> DesEncryptor, DesCrypt::Decryptor --> DesDecryptor. hashlag 2026-01-31 17:18:25 +03:00
  • 3c98b75986 Create dedicated Cipher/Block directory for block ciphers hashlag 2026-01-30 01:01:48 +03:00
  • b5d1f9a6fc Make CRTP base classes ctors protected hashlag 2026-01-30 00:44:24 +03:00
  • 2c9200ab21 Merge branch 'mac-bench' hashlag 2026-01-29 23:43:28 +03:00
  • 6246bf4538 Add HmacSha1_PartialUpdate100Bench hashlag 2026-01-29 23:40:39 +03:00
  • 78c59dc668 Add HmacSha1_ReuseBench hashlag 2026-01-29 23:39:00 +03:00
  • d4fa11795b Add HmacSha1_CreateComputeDeleteBench hashlag 2026-01-29 23:38:22 +03:00
  • 3780586e63 Add HmacMd5_PartialUpdate100Bench hashlag 2026-01-29 23:34:53 +03:00
  • cc9963f1ca Add HmacMd5_ReuseBench hashlag 2026-01-29 23:34:20 +03:00
  • 05533e7c6b Add HmacMd5_CreateComputeDeleteBench hashlag 2026-01-29 23:33:45 +03:00
  • 961a521c57 Add HmacBenches.cpp to ChaosBenches_SOURCE hashlag 2026-01-29 23:31:15 +03:00
  • 029055f9a3 Add HmacMd4_PartialUpdate100Bench hashlag 2026-01-29 23:30:16 +03:00
  • b5f86b5633 Add HmacMd4_ReuseBench hashlag 2026-01-29 23:29:33 +03:00
  • 0bc29c86e5 Add HmacMd4_CreateComputeDeleteBench hashlag 2026-01-29 23:16:07 +03:00
  • 11561c9379 ChaosCi.yaml: fix directory path style hashlag 2026-01-29 01:29:52 +03:00
  • b7a31b44df Configure retention policy for coverage reports hashlag 2026-01-29 00:42:20 +03:00
  • 4ae55f93fc Sha1HasherTests: Add a longer than 56 (mod 64) byte message testcase hashlag 2026-01-29 00:28:16 +03:00
  • 8eb0c6ab12 Md5HasherTests: Add an exactly 56 byte message testcase hashlag 2026-01-29 00:18:26 +03:00
  • 90c44f5305 Md4HasherTests: Add an exactly 56 byte message testcase. hashlag 2026-01-29 00:10:49 +03:00
  • cd6014d8c0 Merge branch 'tgt-builds' hashlag 2026-01-28 23:29:57 +03:00
  • 0a8b79cd09 Make CI not to build currently unused targets: ChaosTests in Release and ChaosBenches in Debug. hashlag 2026-01-28 23:24:12 +03:00
  • 0c3ce4af8d Merge branch 'lcov-report-ci' hashlag 2026-01-28 23:15:42 +03:00
  • 01d7d19ee6 Remove lcov --ignore-errors flag. hashlag 2026-01-28 23:06:47 +03:00
  • 612b11b02f Run lcov with proper --exclude flags to eliminate unwanted coverage data generation hashlag 2026-01-28 22:59:55 +03:00
  • 15bb663281 Revert "Run lcov with --no-external flag set" hashlag 2026-01-28 22:51:38 +03:00
  • 9a764c06db Run lcov with --no-external flag set hashlag 2026-01-28 22:45:09 +03:00
  • b02685d29f Give the upload-artifact step a proper name hashlag 2026-01-28 02:25:44 +03:00
  • 1a999a7dd3 Downgrade to actions/upload-artifact@v3 hashlag 2026-01-28 02:18:02 +03:00
  • 18bcd87f81 Ignore lcov mismatch errors hashlag 2026-01-28 02:11:07 +03:00
  • 07663decf9 ChaosCi: Report coverage via lcov + genhtml hashlag 2026-01-28 02:05:36 +03:00
  • 2a5a2c96b5 ChaosTests: Build with --coverage in Debug hashlag 2026-01-28 02:04:17 +03:00
  • d0e7d2b0ec Use self-hosted copies of dependencies distros hashlag 2026-01-28 00:38:01 +03:00
  • 4e89b2fb05 Run tests under valgrind's memcheck hashlag 2026-01-26 00:28:43 +03:00
  • 1e593ef703 Merge branch 'sha1bench' hashlag 2026-01-25 19:17:51 +03:00
  • 9eb2a6bcde Add Sha1Hasher benchmarks hashlag 2026-01-25 19:17:16 +03:00
  • 85fe3cfe88 Refine benchmark names: use _ to highlight scope hashlag 2026-01-25 19:11:31 +03:00
  • 89991c21f5 Merge branch 'md5bench' hashlag 2026-01-25 19:09:17 +03:00
  • d8c8fd0ce3 Add Md5Hasher benchmarks hashlag 2026-01-25 19:08:57 +03:00
  • 5ec6fc2f20 Add Md4HasherPartialUpdate100Bench hashlag 2026-01-25 18:55:51 +03:00
  • 512338df33 Add Md4HasherReuseBench hashlag 2026-01-25 18:45:38 +03:00
  • bdd43d8fa2 Rename ChaosCI.yaml --> ChaosCi.yaml to match the project's abbreviation style hashlag 2026-01-25 18:33:06 +03:00
  • ab9220587e Get rid of unnecessary path relativity in 'test-and-benchmark' job hashlag 2026-01-25 18:26:24 +03:00
  • 254c1e0e01 Explicitly configure test build as 'Debug' hashlag 2026-01-25 18:18:55 +03:00
  • 26d866d1cf Rename job steps: 'Configure, build' --> 'Configure and build' hashlag 2026-01-25 18:16:10 +03:00
  • b707e1ce68 Merge branch 'bench' hashlag 2026-01-25 18:12:13 +03:00
  • b9eb1a5fc8 Rename job build-and-test --> test-and-benchmark hashlag 2026-01-25 18:11:26 +03:00
  • 28334d1d78 Run tests and benchmarks in one job hashlag 2026-01-25 18:07:41 +03:00
  • d30d5f8a74 Build benchmarks with CMAKE_BUILD_TYPE=Release hashlag 2026-01-25 17:48:57 +03:00
  • 478012dd10 Place test and bench jobs in one .yaml hashlag 2026-01-25 17:42:24 +03:00
  • ff57cd0d31 Fix #includes: Add <cstring> for strlen() hashlag 2026-01-25 17:35:53 +03:00
  • 3e7a0f3e53 Fix benchmark job name hashlag 2026-01-25 17:34:12 +03:00
  • c0685d00b5 Add ChaosBenchmarkCI.yaml workflow hashlag 2026-01-25 17:30:50 +03:00
  • 660b13a045 ChaosBenches: Add Md4HasherCreateComputeDeleteBench hashlag 2026-01-25 17:24:58 +03:00
  • cbefae2256 Rename README.TXT --> README.txt hashlag 2026-01-25 00:00:18 +03:00
  • 4da2f0e6eb Merge branch 'des' hashlag 2026-01-24 23:56:07 +03:00
  • 0ca97cc336 Use DesCrypt::Block type alias in EncryptBlock()/DecryptBlock() signatures hashlag 2026-01-24 23:53:04 +03:00
  • 66413e2cfc Add .cache/ to .gitignore hashlag 2026-01-24 23:44:57 +03:00
  • a8141cb708 Add .cache/ to .gitignore hashlag 2026-01-24 23:44:57 +03:00
  • e8d0b93c5e Overload DecryptBlock() for the whole block as UInt64 hashlag 2026-01-24 23:24:44 +03:00
  • 5a2d802a25 Overload EncryptBlock() for the whole block as UInt64 hashlag 2026-01-24 23:14:03 +03:00
  • 15dd7398d2 Implement DES decryption hashlag 2026-01-23 22:22:28 +03:00
  • 5fd92e0c9d Fix long statement formatting hashlag 2026-01-23 21:32:57 +03:00
  • da5eaff182 Introduce stateful DesCrypt::Encryptor class, remove static DesCrypt::EncryptBlock() hashlag 2026-01-23 21:31:04 +03:00
  • 3a2a665031 Fix a layering issue: private EncryptBlock() should use a private key representation hashlag 2026-01-22 22:36:14 +03:00
  • fa042e7abf Rename RawKeyArray --> RawKey since it's not an 'array of raw keys' hashlag 2026-01-21 23:35:15 +03:00
  • 9e67a7e4f4 Add DES main algorithm draft implementation hashlag 2026-01-19 02:30:06 +03:00
  • d63855a505 Add Bitwise::PackUInt64(<...>) utility function hashlag 2026-01-15 03:14:45 +03:00
  • 51c2da1e48 Explicitly #include <utility> in DesCrypt.hpp (std::pair<> used) hashlag 2026-01-14 01:33:35 +03:00
  • 5e35462667 Add DES key schedule pre-draft implementation hashlag 2026-01-14 01:31:26 +03:00