aboutsummaryrefslogtreecommitdiff
path: root/gost_lcl.h
AgeCommit message (Collapse)AuthorFilesLines
2022-12-02Implementation of the MGM mode for magma/kuznyechikigrkir1-0/+5
first implemented in ossl_patched branch uses dynamic NIDs Signed-off-by: Sergei Ianovich <sergei.ianovich@ya.ru>
2022-12-02engine: create missing NIDsSergei Ianovich1-0/+11
Signed-off-by: Sergei Ianovich <sergei.ianovich@ya.ru>
2022-08-11Add magma-ecb mode. Fixes #410Mark Fedorov1-0/+1
2021-10-11Making a gost provider - Add the macsRichard Levitte1-0/+4
We add the macs for the provider as wrappers around the EVP_MD implementations designed for ENGINEs. This is not the most elegant, but it does the job. When an algorithm has an OID, it's included in the OSSL_ALGORITHM name as an alias. This is the way to avoid having to register the OIDs in OpenSSL proper.
2021-10-11Making a gost provider - Add the digestsRichard Levitte1-0/+5
We add the digests for the provider as wrappers around the routines designed for ENGINEs. This is not the most elegant, but it does the job. When an algorithm has an OID, it's included in the OSSL_ALGORITHM name as an aliase. This is the way to avoid having to register the OIDs in OpenSSL proper. test/01-digest.t is modified to test the provider as well.
2021-10-11Making a gost provider - Add the ciphersRichard Levitte1-0/+5
We add the ciphers for the provider as wrappers around the routines designed for ENGINEs. This is not the most elegant, but it does the job. When an algorithm has an OID, it's included in the OSSL_ALGORITHM name as an aliase. This is the way to avoid having to register the OIDs in OpenSSL proper. test/03-encrypt.t is modified to test the provider as well.
2021-10-11Making a gost provider - Add the provider foundationRichard Levitte1-0/+1
This adds the source to get a minimal provider that provides... nothing.
2021-09-28Don't recreate GOST EC groups every time (#358)Dmitry Belyavskiy1-0/+3
* Don't recreate GOST EC groups every time For multiple keygen it saves 6% time
2020-11-12modernize ctrl function for magma & kuznechik TLS usageIgor Kirillov1-0/+3
modernize magma & kuznechik ctrl functions for EVP_CTRL_TLSTREE mode. add some minor updates to store master key for using in magma TLSTREE mode.
2020-07-09Add string option 'vko' for EVP_PKEY_CTRL_SET_VKOVitaly Chikunov1-0/+1
Format: vko:<bit length> Such as: vko:256 for VKO_256 vko:512 for VKO_512 vko:0 disable strict VKO mode, switch to other derive methods.
2020-07-09Allow to use raw VKO in EVP_PKEY_deriveVitaly Chikunov1-0/+2
Suitable for tests. Use EVP_PKEY_CTRL_SET_VKO ctrl with appropriate digest nid to enable VKO mode.
2020-07-03GOST ECC optimizations (#263)Billy Brumley1-0/+16
Standalone EC implementations from ECCKiila. https://gitlab.com/nisec/ecckiila
2020-05-13Remove unneeded declarations after registration reworkVitaly Chikunov1-32/+0
2020-05-13Update Copyright lines after registration reworkVitaly Chikunov1-1/+2
- Add year 2020 to old lines. - Some files did not have original Copyright line - added "Update at 2020" to show that I'm not original contributor. - Some files did not have License line - added reference to OpenSSL license.
2020-05-13gost_eng: Simplify digest registrationVitaly Chikunov1-0/+7
Now only simple array of `GOST_digest's. No need to care about aliases anymore.
2020-05-13gost_md: Rework alias support in digest registrationVitaly Chikunov1-0/+1
2020-05-13gost_md: Rework digest registration, add GostR3411_94_digestVitaly Chikunov1-0/+22
Introduce `GOST_digest' to hold digest registration data, and `GOST_init_digest'/`GOST_deinit_digest` helpers to handle it. It's single-level templatized.
2020-05-12gost_keyexpimp: Rework cipher registrationVitaly Chikunov1-0/+2
2020-05-12gost_grasshopper_cipher: Rework cipher registrationVitaly Chikunov1-0/+8
This only adds registering via tables, but not removing obsolete code.
2020-05-12gost_crypt: Allow templates in GOST_cipherVitaly Chikunov1-0/+1
Avoid duplication of struct values with help of 1-level templates.
2020-05-12gost_crypt: Add magma_cbc_cipherVitaly Chikunov1-0/+1
2020-05-12gost_crypt: Add magma_ctr_acpkm_omac_cipherVitaly Chikunov1-0/+1
2020-05-12gost_crypt: Add magma_ctr_acpkm_cipherVitaly Chikunov1-0/+1
2020-05-12gost_crypt: Add magma_ctr_cipherVitaly Chikunov1-0/+1
2020-05-12gost_crypt: Add Gost28147_89_cnt_12_cipherVitaly Chikunov1-0/+1
2020-05-12gost_crypt: Add Gost28147_89_cnt_cipherVitaly Chikunov1-0/+1
2020-05-12gost_crypt: Add Gost28147_89_cbc_cipherVitaly Chikunov1-1/+1
2020-05-12gost_crypt: Rework cipher registration, add Gost28147_89_cipherVitaly Chikunov1-1/+26
2020-05-10GOST CMS encryption implementation.Dmitry Belyavskiy1-2/+2
2020-05-09magma-ctr-acpkm + magma-ctr-acpkm-omacDmitry Belyavskiy1-0/+5
2020-05-04Magma/Kuznyechik ASN1 parameters and functionsDmitry Belyavskiy1-0/+6
2020-05-04PSKeyTransport_gost includes UKMDmitry Belyavskiy1-0/+1
2020-05-04GOST wrap ciphers registrationDmitry Belyavskiy1-0/+3
2020-05-01pkeyutl -derive supportDmitry Belyavskiy1-0/+1
Support of pkeyutl -pkeyopt ukmhex:0102030405060708 syntax
2020-02-29cppcheck: Variable is reassigned a value before the old one has been used.Nikolay Morozov1-3/+3
Plus some minor chnages - function defenition doen't match function declaration - Consecutive break statement is unnecessary. - Type missmatch in format string
2020-02-26ec: Use BN_{CTX_,}secure_new memory API for priv keysVitaly Chikunov1-3/+0
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'.
2020-02-17cppcheck: function defenition doen't match function declarationNikolay Morozov1-4/+4
2019-09-05Make VKO_compute_key public.Dmitry Timoshkov1-0/+6
2019-09-04Get rid of EVP_MD_CTRL_MAC_LENDmitry Belyavskiy1-1/+0
2019-01-27test_params: Avoid calls to fill_GOST_EC_params and bind_gostVitaly Chikunov1-3/+0
Use external API to generate key with parameters instead of calling fill_GOST_EC_params(). Use OPENSSL_CONF trick like in test_sign to avoid calling bind_gost(). Reverting 1716316de77 ("Export bind_gost to allow local engine init") as not needed anymore.
2019-01-21Export bind_gost to allow local engine initVitaly Chikunov1-0/+2
Look at `test_params.c` for example.
2018-12-06New master API versioning.Dmitry Belyavskiy1-1/+1
2018-09-18TLSTREE examples for GrasshopperDmitry Belyavskiy1-0/+3
2018-09-04Let's wrap old and new key enncryption togetherDmitry Belyavskiy1-2/+2
2018-09-04GOST key transport 2018 - decrypt as separate functionDmitry Belyavskiy1-1/+1
2018-09-04GOST key export, separate functionDmitry Belyavskiy1-0/+11
2018-09-04ASN1 definitionsDmitry Belyavskiy1-0/+18
2018-09-03Remove dependency from DSADmitry Belyavskiy1-8/+3
2018-09-03Indent + gost_kdftree2012_256 declarationDmitry Belyavskiy1-6/+12
2018-08-30Dealing with new KeyExchangeDmitry Belyavskiy1-0/+2