615 Commits

Author SHA1 Message Date
Ivan Romanov
d320ef4fdb Add some missed headers to Qt Creator project 2016-10-10 21:50:18 +05:00
Ivan Romanov
57878ff44f Add support for AES GCM and AES CCM modes
Only qca-openssl now can use GCM and CCM. CCM is not tested and
planed for future.
2016-09-19 10:48:11 +05:00
Raphael Kubo da Costa
84f53aea25 qca-ossl: Remove SHA0 from all_hash_types() when it is not available.
Commit 0dbed8e ("qca-ossl: Fix build without support for SHA-0") forgot
to add an #ifdef check for SHA0 support in all_hash_types().

REVIEW: 128700
2016-08-18 08:52:57 +02:00
Ivan Romanov
558f819819 gnupg: use utf-8 for keys output 2015-10-29 10:52:11 +05:00
Ivan Romanov
bf61f35cb4 gnupg: fixed keys is not updating
On Windows gpg uses ANSI codepage to output homedir and keyrings
paths. No way to output in utf-8. Gpg returns utf-8 strings output
only when --with-colons option is used.
2015-10-29 10:52:11 +05:00
Ivan Romanov
7e4192b70e gnupg: resolve symbolic links
Keyrings watcher can gets paths in any format. To avoid possible
problems try to use unified names for paths.
2015-10-29 10:52:11 +05:00
Ivan Romanov
7a76a9c027 qca-gnupg: default path to keyrings
When no keys 'gpg --list-keys' doesn't return path to keyring file.
Path is needest for watching to know when keys added or removed.
Use default keyrings path based on GnuPG home directory. This
directory gets with output 'gpg --version'. Line which starts with
'Home: ' contains GnuPG home directory. I believe it is correct
for GnuPG always and won't be changed in the future.
2015-10-29 10:52:11 +05:00
Heiko Becker
0dbed8eb38 qca-ossl: Fix build without support for SHA-0
LibreSSL >= 2.3.0 removed support for SHA-0, so there's no EVP_sha
anymore.
Wikipedia says about SHA-0: "160-bit hash function published in 1993
under the name SHA. It was withdrawn shortly after publication due to
an undisclosed "significant flaw" and replaced by the slightly revised
version SHA-1.'

REVIEW: 125387
2015-10-28 22:06:21 +01:00
Heiko Becker
20a587d776 qca-ossl: Fix build without SSLv3
This fixes building with LibreSSL >= 2.3.0 which has removed support
for SSLv3 completely. As far as I know OpenSSL can be configured to
build without it, so it might be helpful there as well.

REVIEW: 125386
2015-10-28 22:05:59 +01:00
Alon Bar-Lev
db17d5969b plugins: qca-logger: README: fix typo
Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
2015-10-23 22:32:07 +03:00
Heiko Becker
593de6855a Fix build with libressl
libressl removed the SSL Compression functionality (which might
be considered insecure) and thus also compress_meth.
SSL_SESSION_get_compress_id is just a stub in libressl which always
returns 0 and in openssl it returns compress_meth.

REVIEW: 121107
2014-11-13 14:23:54 +05:00
Ivan Romanov
72457bee3a qca-ossl: fixed compilation warnings 2014-11-13 02:13:50 +05:00
Ivan Romanov
58e9539513 qca-ossl: added missed signatures 2014-11-06 12:16:27 +05:00
Ivan Romanov
13050bf00d cmake: plugins on Mac OS must use .dylib suffix 2014-11-05 22:42:32 +05:00
Ivan Romanov
638a8aff5c qca-ossl: no DSA_* dl groups in FIPS specification 2014-11-05 11:49:14 +05:00
Ivan Romanov
6ee6f7f22a qca-gnupg: more refactoring 2014-10-07 04:26:33 +06:00
Ivan Romanov
9b8f978bff qca-gnupg: refactoring
Moved GpgAction to separate file.
2014-10-07 04:26:30 +06:00
Ivan Romanov
90b1287e52 qca-gnupg: some optimization in LineConverter 2014-10-07 02:01:17 +06:00
Ivan Romanov
5d28790cb5 qca-gnupg: refactoring
Moved LineConverter class to separate file
2014-10-07 01:14:14 +06:00
Ivan Romanov
47fc70af6e qca-gnupg: correct way to reset gpg proccess 2014-10-05 22:08:05 +06:00
Ivan Romanov
de02538aaf qca-gnupg: try to fix SIGPIPE again 2014-09-30 17:20:27 +06:00
Ivan Romanov
38eae11512 qca-gnupg: fixed SIGPIPE
need always close stding only after all data will be written
2014-09-30 04:58:15 +06:00
Ivan Romanov
f38eee2d18 qca-gnupg: refactoring 2014-09-29 15:20:13 +06:00
Ivan Romanov
380710aae0 qca-gnupg: refactoring
Moved find_bin, escape_string and unescape_string to separated source
file.
2014-09-29 02:24:13 +06:00
Ivan Romanov
fe0d1ad5c0 qca-gnupg: dropped ugly hack 2014-09-29 01:47:47 +06:00
Ivan Romanov
efb8da2402 qca-gnupg: dropped workaround for old unsupported Qt 2014-09-29 01:35:52 +06:00
Ivan Romanov
54e8363ddf qca-gnupg: cleaned trash 2014-09-29 01:21:24 +06:00
Ivan Romanov
d598c689b7 cmake: no install target in developer mode 2014-09-28 21:14:26 +06:00
Ivan Romanov
686c8cac9a qca-gnupg: cleaned trash 2014-09-28 18:28:04 +06:00
Ivan Romanov
f0a5b957fc qca-gnupg: good debug message
Output diagnostic text to console if defined GPGOP_DEBUG
2014-09-28 18:22:59 +06:00
Ivan Romanov
c00da86463 cmake: don't check for gpg program
gpg program is runtime dependency. Plugin can be built without it.
2014-09-27 00:53:47 +06:00
Ivan Romanov
3ebc9c14e2 SafeTimer: many fixes
1. SafeTimer now is common and public class. All plugins use this
   implementation.
2. Added debug messages in SafeTimer. Uncomment SAFETIMER_DEBUG to
   enable.
3. TimerFixer skips SafeTimer objects. No need extra fixes for
   SafeTimer. But can be problems with children of SafeTimer I
   believe no such.
2014-09-25 07:26:24 +06:00
Ivan Romanov
192243d4bd cmake: fixed QCA_PLUGINS_INSTALL_DIR meaning
Plugins must be in crypto subdir. It is used internally in providers
finding algorythm. So now QCA_PLUGINS_INSTALL_DIR it is path to
crypto directory.
2014-09-24 16:00:39 +06:00
Sune Vuorela
93f60f1626 Initialize memory is a class.
REVIEW: 120101
2014-09-12 21:58:10 +02:00
Florian Fieber
2559f1779a Fix operating on keys with unrelated expired subkeys
Ignore KEYEXPIRED which will be thrown for any expired subkey regardless
of being related to the current operation. Instead, use EXPKEYSIG,
REVKEYSIG, EXPSIG and INV_RECP accordingly.

Add new errors QCA::SecureMessage::{ErrorSignerRevoked,
                                    ErrorSignatureExpired,
                                    ErrorEncryptRevoked}.

Due to GnuPG bug #1650 <https://bugs.g10code.com/gnupg/issue1650>
encrypting to an expired or revoked key will omit the reason for failing,
resulting in the error code QCA::SecureMessage::ErrorEncryptInvalid.

REVIEW: 118567
2014-09-08 18:14:40 +06:00
Ivan Romanov
c30f5d2455 cmake: fixed typo 2014-08-22 21:48:20 +06:00
Ivan Romanov
da1f8190ac cmake: use FindPkcConfig module instead of obsoletes PKGCONFIG 2014-08-21 03:10:34 +06:00
Ivan Romanov
fbdf57f843 cmake: install .PDB files
On Windows when compiling with Visual Studio will be produced special
.pdb files for debuggins purposes. It must be put next to target
runtime (.dll or .exe) file.
2014-02-03 02:05:54 +06:00
Ivan Romanov
2502aad59d cmake: after compiling put all static libs to lib directory 2014-02-01 03:33:29 +06:00
Ivan Romanov
b049c59588 qca-botan: fixed getting result size for ciphers
Do not try to guess the result size. It rely with particular
algo and some other factors and so can be any. Just use
Pipe::remaining() for this purpose.
2014-01-30 00:33:50 +06:00
Adnan RIHAN
71f932186b Fixed "unused variable" warning in qca-gcrypt plugin 2014-01-22 11:10:19 +01:00
Adnan RIHAN
9e0ddb716d Overloaded "makeKey" to derive a password depending on a time factor
Overloaded "makeKey" in QCA::KeyDerivationFunction + botan/gcrypt/ossl plugins
to allow deriving a master password depending on a time factor in addition to
only giving an arbitrary iteration count.
Deriving with a time delays exhaustive research on master passwords by
increasing the time needed to try each password (the derivation time)
Added corresponding unittests.

REVIEW: 114503
2014-01-06 18:38:21 +01:00
Ivan Romanov
80048dc7b9 qca-nss: fixed KeyLenght for Cipher
Before was KeyLength(0, 0, 0). Seems it is dummy.
2014-01-03 22:14:14 +06:00
Ivan Romanov
6d690c0070 Build static QCA
Added new cmake variable SHARED_LIBRARY. By default is on.
When it is off QCA library, plugins, tools, examples and unittests
will be built as static. Also if is used static Qt plugins will be
built as static. Tested with Qt4.
2014-01-02 03:50:18 +06:00
Ivan Romanov
5d06579605 Use internal cache vars to choose plugins for building
It allow to know will be particular plugin build or no
in any place of cmake rules.
2014-01-01 02:10:15 +06:00
Adnan RIHAN
17cf1841f7 RSA Keys are permutable, can encrypt with private and decrypt with public
[REVIEW]: 114416
2013-12-17 06:57:26 +01:00
Ivan Romanov
ea239aaf96 [ossl] fixed certs time zone 2013-12-09 03:32:59 +06:00
Ivan Romanov
60b96878d7 fixed tab 2013-11-21 11:34:50 +06:00
Ivan Romanov
4e535d25e5 Fixed IID for all plugins
In Qt5 plugin IID is the same as identifier from Q_DECLARE_INTERFACE
2013-11-21 11:31:13 +06:00
Ivan Romanov
2d1d815ab2 less warnings 2013-11-17 16:22:35 +06:00