Commit Graph
42 Commits
Author SHA1 Message Date
hashlag eeb57733e7 EcbMode: delete default ctor. 2026-10-18 01:33:08 +03:00
hashlag d78922e235 DesCrypt::Decryptor: delete move,copy * constructor,operator. 2026-10-18 01:31:49 +03:00
hashlag 4214497426 DesCrypt::Encryptor: delete move,copy * constructor,operator. 2026-10-18 01:30:43 +03:00
hashlag b464d6a6a2 DesCrypt: delete move,copy * constructor,operator. 2026-10-18 01:27:51 +03:00
hashlag 78836e4b75 DesCrypt KeySchedule: delete move,copy * constructor,operator. 2026-10-18 01:25:57 +03:00
hashlag 8401612e20 EcbMode: expose Cipher and Padder types.
Chaos Ci / test (push) Successful in 3m13s
Chaos Ci / benchmark (push) Successful in 1m28s
2026-10-11 23:15:41 +03:00
hashlag 894f41fa57 Rename concept Encryptor --> BlockEncryptor.
Chaos Ci / benchmark (push) Successful in 1m26s
Chaos Ci / test (push) Successful in 3m14s
2026-09-19 18:33:52 +03:00
hashlag d918e998d1 Rename concept Decryptor --> BlockDecryptor. 2026-09-19 18:01:13 +03:00
hashlag 0394c42238 Rename concept Key –> BlockKey. 2026-09-19 17:55:09 +03:00
hashlag 611ffa2222 Rename concept Cipher --> BlockCipher.
Chaos Ci / test (push) Successful in 3m12s
Chaos Ci / benchmark (push) Successful in 1m26s
2026-09-19 01:45:37 +03:00
hashlag c51a22646f EcbMode: require concept Cipher.
Chaos Ci / test (push) Successful in 3m1s
Chaos Ci / benchmark (push) Successful in 1m26s
2026-09-13 01:36:39 +03:00
hashlag cc7c8e1e55 Introduce concept Cipher. 2026-09-13 01:32:59 +03:00
hashlag c9e90e4d0d Introduce concept Key. 2026-09-13 01:14:41 +03:00
hashlag cb03a5db25 EcbMode: require concept Padder. 2026-09-13 00:59:43 +03:00
hashlag ba87a7d149 Update concept Decryptor: require T::BlockSize and T::KeySize to be
constant expressions.
2026-09-12 03:02:03 +03:00
hashlag 84e9068655 Adjust concept Encryptor formatting. 2026-09-12 02:59:45 +03:00
hashlag 4e28752614 Update concept Encryptor: require T::BlockSize and T::KeySize to be
constant expressions.
2026-09-12 02:58:05 +03:00
hashlag 0f41687ea6 Update concept Decryptor: require const methods. 2026-09-12 02:34:41 +03:00
hashlag a015fbe673 Update concept Encryptor: require const methods. 2026-09-12 02:34:00 +03:00
hashlag 3dacd57fef Replace Decryptor CRTP base with a concept.
Chaos Ci / test (push) Successful in 3m4s
Chaos Ci / benchmark (push) Successful in 1m31s
2026-09-06 02:45:45 +03:00
hashlag 2c6a24197a Replace Encryptor CRTP base with a concept.
Chaos Ci / test (push) Successful in 5m6s
Chaos Ci / benchmark (push) Successful in 1m29s
2026-09-06 02:27:35 +03:00
hashlag f0228877b4 DesCrypt: Expose Block type in Encryptor and Decryptor. 2026-09-06 01:05:15 +03:00
hashlag 8b9b67aa0c Merge branch 'dm-reorder'
Chaos Ci / test (push) Successful in 3m18s
Chaos Ci / benchmark (push) Successful in 2m0s
Reorder data members of some entities to mitigate performance issues on
ARM.
2026-07-31 02:07:51 +03:00
hashlag 9af2249547 EcbMode: Rename PreviousBlock_ --> LastBlock_.
Chaos Ci / test (push) Successful in 2m54s
Chaos Ci / benchmark (push) Successful in 1m56s
2026-07-30 01:21:41 +03:00
hashlag 192cd67deb EcbMode: Optimize data management on decryption hotpath. 2026-07-30 01:17:47 +03:00
hashlag c9a262bac4 EcbMode: Inline the DelayedFlush() method. 2026-07-30 01:06:21 +03:00
hashlag 6ae4df4bfc Add ECB-mode decryptor draft implementation.
Chaos Ci / test (push) Successful in 2m59s
Chaos Ci / benchmark (push) Successful in 1m31s
2026-07-29 02:25:51 +03:00
hashlag 34b19434a1 Fix missing includes. 2026-07-20 03:08:21 +03:00
hashlag bea8a84a4f Add ECB-mode encryptor draft implementation.
Chaos Ci / test-and-benchmark (push) Successful in 4m16s
2026-07-05 21:34:36 +03:00
hashlag 6c5a12f339 Standartize block cipher's inner encryptor/decryptor class names.
Chaos Ci / test-and-benchmark (push) Successful in 2m43s
2026-06-22 02:02:44 +03:00
hashlag 0647a7c3dc DesEncryptor/DesDecryptor: expose key type.
Chaos Ci / test-and-benchmark (push) Successful in 1m57s
2026-02-08 02:57:00 +03:00
hashlag 151c93560c Expose DES key size through DesCrypt, DesCrypt::Encryptor, DesCrypt::Decryptor. 2026-02-07 18:02:27 +03:00
hashlag 65eb51c133 Remove unused CrunchUInt64() overload.
Chaos Ci / test-and-benchmark (push) Successful in 1m57s
2026-02-04 23:47:45 +03:00
hashlag a0f17ea127 Decryptor: Require end of the output span to be indicated explicitly.
Usage becomes much less error-prone.
2026-02-02 01:10:22 +03:00
hashlag 67709e5361 Encryptor: Require end of the output span to be indicated explicitly.
Usage becomes much less error-prone.
2026-02-02 00:52:08 +03:00
hashlag d194fef1af Mark all Block::Decryptor<> methods const.
Chaos Ci / test-and-benchmark (push) Successful in 1m42s
This allows for convenient usage of const Decryptor<Impl> &.
2026-02-01 00:24:50 +03:00
hashlag cdcab2f4f7 Mark all Block::Encryptor<> methods const.
This allows for convenient usage of const Encryptor<Impl> &.
2026-01-31 23:56:25 +03:00
hashlag a97826da88 Expose block sizes of block ciphers.
Chaos Ci / test-and-benchmark (push) Successful in 1m45s
Both via static data members and Encryptor/Decryptor interfaces.
Crucial for safe memory allocation routine.
2026-01-31 19:26:51 +03:00
hashlag 73c455901b Introduce Block::Decryptor<> CRTP base class.
Chaos Ci / test-and-benchmark (push) Successful in 1m43s
Inherit DesDecryptor from it.
2026-01-31 18:35:23 +03:00
hashlag 4cf79b61ad Introduce Block::Encryptor<> CRTP base class.
Inherit DesEncryptor from it.
2026-01-31 18:12:43 +03:00
hashlag ba70abd2af Rename DesCrypt::Encryptor --> DesEncryptor, DesCrypt::Decryptor --> DesDecryptor.
Chaos Ci / test-and-benchmark (push) Successful in 1m43s
Maintain naming consistency with Hash subproject.
2026-01-31 17:22:14 +03:00
hashlag 3c98b75986 Create dedicated Cipher/Block directory for block ciphers
Chaos Ci / test-and-benchmark (push) Successful in 1m41s
Move Des there.
2026-01-30 01:01:48 +03:00