| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
So it looks like sed added a '\r' between the closing paren and the semi. Grepping for '^;' failed because the '\r' was considered part of the previous line, so it showed no hits. I finally had to write a C program to properly identify and fix those damn stray semicolons.
|
|
|
|
| |
This issue is a recurring issue. Let's try fixing it in the #define this time.
|
| |
|
| |
|
|
|
|
| |
This should have been removed around January 2018 with the other functions.
|
|
|
|
| |
This should have been removed around January 2018 with the other functions.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Also see https://groups.google.com/forum/#!topic/cryptopp-users/A7-Xt5Knlzw
|
| |
|
|
|
|
| |
This cleanup was performed using Clang and -Wdocumentation -Wno-documentation-deprecated-sync
|
|
|
|
| |
This also follows the pattern set forth by FxiedKeyLength and VariableKeyLength
|
|
|
|
|
| |
VariableBlockSize and VariableBlockCipherImpl were added at Commit bd8edfa87b579073. Reflecting on FixedKeyLength and VariableKeyLength, the const KEYLENGTH is only provided by FixedKeyLength. VariableKeyLength provides DEFAULT_KEYLENGTH. This check-in makes VariableBlockSize follow VariableKeyLength.
This check-in also splits block size and iv length. Its conceivable we will encounter a cipher with a block size of 128-bits with an iv of 256-bits. The bd8edfa87b579073 check-in could not handle the difference, so we fix it now.
|
|
|
|
| |
parameter"
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This should lead the way for more modern block ciphers like Threefish and Kalyna. It tested well with both regular cipher modes (the mode has an instance of the cipher) and external cipher modes (the cipher and mode are distinct objects, and the mode holds a reference to the cipher).
We still have to work out the details of naming a cipher. For example, Kalyna with a 128-bit key can use a 128-bit or 256-bit block size. Kalyna-128 is not enough to describe the algorithm and locate it in the object registry. Kalyna-128-128 looks kind of weird; maybe Kalyna-128(128) or Kalyna-128(256) would be better.
Here are the initial test cases to verify functionality:
byte key[64] = {}, iv[32] = {};
ECB_Mode<Kalyna>::Encryption enc1;
enc1.SetKey(key, 16);
CBC_Mode<Kalyna>::Encryption enc2;
enc2.SetKeyWithIV(key, 16, iv);
AlgorithmParameters params = MakeParameters
(Name::BlockSize(), 32)
(Name::IV(), ConstByteArrayParameter(iv, 32));
CTR_Mode<Kalyna>::Encryption enc3;
enc3.SetKey(key, 16, params);
CBC_Mode<Kalyna>::Encryption enc4;
enc4.SetKey(key, 32, params);
Kalyna::Encryption enc5;
ECB_Mode_ExternalCipher::Encryption ecb(enc5);
ecb.SetKey(key, 16, params);
Kalyna::Encryption enc6;
ECB_Mode_ExternalCipher::Encryption cbc(enc6);
cbc.SetKey(key, 32, params);
|
|
|
|
| |
We have made a fair number of changes, and we don't want WD to receive credit for issues he was not part of
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
This reverts commit 08a206f3eb2713a17eda636ebb96ed8142a4036d. This broke the self tests, and casting everything to 'signed int' to avoid unsigned promots did not resolve the issue.
|
|
|
|
| |
The warning surfaces under earlier Clnag's and GCC's
|
|
|
|
| |
StaticGetValidKeyLength in non-constexpr builds (Issue 255)
|
| |
|
|
|
|
| |
functions) using constexpr. Updated documentation
|
|
|
|
| |
Coarse grained benchmarking with GCC 4.8 at -O2 using 'time' and 'cryptest.exe' shows we shaved about 100ms to 150ms off the running time. We are ready to break the 1-second mark for the running time (its elluded me for some time now)
|
|
|
| |
InvalidRounds expects a std::string, so it can be constructed in-place and the `__BORLANDC__` define can be removed.
|
|
|
|
| |
See
https://github.com/weidai11/cryptopp/issues/252
|
| |
|
|
|
|
|
|
|
| |
Two macro were causing compiler problems with bcc32
[bcc32 Error] seckey.h(83): E2313 Constant expression required
and
[bcc32 Error] seckey.h(194): E2313 Constant expression required
|
|
|
|
|
| |
This will fix this error with C++Builder:
[bcc32 Error] seckey.h(88): E2354 Two operands must evaluate to the same type
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
(Coverity rollup)
|
| |
|
| |
|
|
|
|
|
|
| |
- added AuthenticatedSymmetricCipher interface class and Filter wrappers
- added CCM, GCM (with SSE2 assembly), CMAC, and SEED
- improved AES speed on x86 and x64
- removed WORD64_AVAILABLE; compiler 64-bit int support is now required
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|