- May 20, 2022
-
-
Dmitry Belyavskiy authored
Remove CRYPT_PARAMS mentioning to avoid confusion
-
- Aug 27, 2021
- Aug 20, 2021
-
-
kartaris authored
-
kartaris authored
-
kartaris authored
-
kartaris authored
-
kartaris authored
-
Richard Levitte authored
Cmake 3.0 was a switch to using targets and properties rather than variables when linking different components together. We follow that philosophy by dropping ${OPENSSL_CRYPTO_LIBRARIES} and ${OPENSSL_SSL_LIBRARIES} in favor of OpenSSL::Crypto and OpenSSL::SSL. (cherry picked from commit 36c50fa5) # Conflicts: # CMakeLists.txt -
Richard Levitte authored
Cmake is generally good at tracking specified dependencies between libraries. All that we need to do is to establish a dependency on OpenSSL's libcrypto for 'gost_core', and then we can reduce the amount of repeated dependencies for everything that links against 'gost_core'. (cherry picked from commit 7ca9b827) # Conflicts: # CMakeLists.txt
-
Richard Levitte authored
The static OpenSSL libraries have some dependencies that need to be recorded fofr everything that's linked against it. To achieve this, we use ${OPENSSL_CRYPTO_LIBRARIES} and ${OPENSSL_SSL_LIBRARIES} instead of ${OPENSSL_CRYPTO_LIBRARY} and ${OPENSSL_SSL_LIBRARY}. (cherry picked from commit 3df64777) # Conflicts: # CMakeLists.txt -
kartaris authored
WIP: Made changes to be able to build gost-engine as static library. Added gost-engine.h to be able to load engine as static engine for openssl. Made gost_core library independent. Corrected openssl version in cirrus.yml Related issue: #340
-
- Feb 26, 2021
-
-
Dmitry Belyavskiy authored
-
- Dec 11, 2020
-
-
Aleksey Terentyev authored
-
- Dec 07, 2020
-
-
igrkir authored
* backport commit 2dd3a2f2 from master update magma cipher ctr_acpkm mode encrypting Fixed bug when acpkm key meshing didn't apply at appropriate time during TLS secure exchange. Unify usage of 'num' variable of EVP_CIPHER_CTX for kuznetchik and magma. * correct define variable dependency add optional compiling setting for EVP_CTRL_TLS1_2_TLSTREE variable Co-authored-by:
Igor Kirillov <i.kirillov@kryptonite.ru>
-
- Dec 06, 2020
-
-
Alexei A. Smekalkine authored
If at the input of the encryption function in the CFB mode we have an integer number of blocks, then in the main loop all blocks will be processed, except for the last one due to an incorrect border check. The last block will be fully processed as a "partial" remainder, but the initialization vector will not be updated. And, thus, the value of IV will always be incorrect in this case. This breaks stateless protocols due to an invalid initialization vector: all messages except the first cannot be decrypted. (Naturally, we are talking about a case with disabled key meshing, which does not allow context recovery due to an erroneous implementation.) It is worth noting here that the code for processing partial blocks (both at the input of the encryption functions and at the output) is a historically unnecessary artifact, since we do not set the EVP_CIPH_FLAG_CUSTOM_CIPHER flag and, as a result, OpenSSL processes partial blocks for us. This patch corrects the checking of the main loop boundary. A similar error is present in the code for the CNT mode, but there it does not manifest itself in any way, because the restoration of the state in this mode is impossible: even after disabling key meshing, we still have the state-dependent transformation of the IV. As an extra result of this fix, the code for processing partial blocks can be completely removed now. (cherry picked from commit cf402dd4)
-
- Nov 29, 2020
-
-
Dmitry Belyavskiy authored
-
Dmitry Timoshkov authored
(cherry picked from commit e1afd2a1)
-
- Oct 31, 2020
-
-
Wolfgang Beck authored
-
- Oct 29, 2020
-
-
Vitaly Chikunov authored
/root/rpmbuild/BUILD/openssl-gost-engine-1.1.1/CMakeFiles/CMakeTmp/src.c:4:14: warning: initialization of 'int *' from incompatible pointer type 'char *' [-Wincompatible-pointer-types] 4 | int *p = buf + 1; | ^~~ /root/rpmbuild/BUILD/openssl-gost-engine-1.1.1/CMakeFiles/CMakeTmp/src.c:5:14: warning: initialization of 'int *' from incompatible pointer type 'char *' [-Wincompatible-pointer-types] 5 | int *q = buf + 2; | ^~~ Reported-by: Ilya Shipitsin <https://github.com/chipitsine> Fixes: #288 (cherry picked from commit 6c7addf7)
-
- Sep 18, 2020
-
-
Dmitry Belyavskiy authored
(cherry picked from commit 47be42da)
-
Dmitry Belyavskiy authored
(cherry picked from commit 1997dd99)
-
Vitaly Chikunov authored
This is based on AX_CHECK_ALIGNED_ACCESS_REQUIRED from autoconf-archive. Note, that on some arches unaligned access behavior could be changed at runtime via prctl(1). Also, unaligned memory access is still slower (and very slow on some arches) even if it's not strictly required. (cherry picked from commit d2810d23)
-
Dmitry Belyavskiy authored
(cherry picked from commit f1f47c6c)
-
- Aug 07, 2020
-
-
Billy Brumley authored
ECCKiila Changes from https://gitlab.com/nisec/ecckiila/-/issues/2 https://gitlab.com/nisec/ecckiila/-/commit/7445ecabef77965743e0ae8d39d7433b07820be6 * X3 -> X1 * eliminate a temp variable X3 = X1 as pointers is the reason this was still passing unit tests. But that might not hold in future versions of ECCKiila, so fix it now. (cherry picked from commit 259301a5)
-
Billy Brumley authored
char defaults to signed on x86/x64, but unsigned on ARM. (cherry picked from commit 409a1c2b)
-
Billy Brumley authored
Standalone EC implementations from ECCKiila. https://gitlab.com/nisec/ecckiila (cherry picked from commit bc346202)
-
Billy Brumley authored
* GOST key agreement cofactor fix (cherry picked from commit dbc8f478)
-
Billy Brumley authored
* Tests that gost-engine correctly computes the public key from the private key. (Twice -- Alice and Bob.) * Tests that gost-engine correctly computes the derived shared key. (Twice -- Alice and Bob, should be identical.) (cherry picked from commit 95dd55b1)
-
- May 03, 2020
-
-
Vitaly Chikunov authored
-
- May 02, 2020
-
-
Dmitry Belyavskiy authored
-
- May 01, 2020
-
-
Dmitry Belyavskiy authored
-
Dmitry Belyavskiy authored
-
Dmitry Belyavskiy authored
Support of pkeyutl -pkeyopt ukmhex:0102030405060708 syntax
-
- Mar 01, 2020
-
-
Vitaly Chikunov authored
There need to be more tests than 2 constant fixed size blocks. Final digest values are generated from the first run. Test description in comments.
-
Nikolay Morozov authored
Plus some minor chnages - function defenition doen't match function declaration - Consecutive break statement is unnecessary. - Type missmatch in format string
-
- Feb 27, 2020
-
-
Nikolay Morozov authored
-
- Feb 26, 2020
-
-
Vitaly Chikunov authored
Only stack buffers are considered.
-
Vitaly Chikunov authored
`RAND_priv_bytes' is supposed to be used for private data.
-
Vitaly Chikunov authored
OpenSSL suggests to use (and internally itself uses) `BN_{CTX_,}secure_new' primitives to work with private keys. These are using `OPENSSL_secure_malloc' et al. calls, which use special 'secure heap' memory. Along, optimize out `hashsum2bn' with `BN_lebin2bn'.
-