Commit Graph

634 Commits

Author SHA1 Message Date
Christian Hohnstaedt
b928f2510c Close #119: Rename "PostgreSQL 6 and 7" to just "PostgreSQL"
... in Remote Database dialoge

While at it, also improve the MySQL driver name
to "MySQL / MariaDB"
2019-05-13 17:12:12 +02:00
Christian Hohnstaedt
5b5c47e0a5 Related to #68: Check for a running DH param process when exiting XCA 2019-04-09 19:14:38 +02:00
Christian Hohnstaedt
b12da23e78 Close #68 Generating large DH params freezes UI
Move DH generation function into separate thread
to keep the UI responsible
2019-04-08 06:44:30 +02:00
Christian Hohnstaedt
5e3d5e0edc Cancel creating a new database if database-password dialog is cancelled.
Clicking cancel in the password dialog during database creation
does not trigger an assertion during key generation/import
anymore.
2019-03-27 05:58:15 +01:00
Christian Hohnstaedt
f43e7520db Support concurrent database access.
If a database is modified by another instance of XCA the passive
instance reloads and displays the changed parts.
2019-03-25 06:47:25 +01:00
Christian Hohnstaedt
ced0995862 Close #91: Change order of "PKCS#11 provider"
With this commit PKCS#11 libraries may be reordered
and enabled or disabled.

The slot selection dialog iterates over all enabled and successfully
loaded libraries in the configured order and collects the slots
of each of them.

In the options dialog the library info is shown in the tool-tip
2019-03-21 06:12:51 +01:00
Christian Hohnstaedt
026d8f8e6d Extend PEM files by human readable information about the item
This can be enabled or disabled during export.
Move from FILE* to QFile
2019-03-18 06:25:20 +01:00
Christian Hohnstaedt
e86d2b160e Improve fingerprint layout 2019-03-18 06:25:20 +01:00
Christian Hohnstaedt
3a39e4d0b0 Close #101: Finish Rename with Enter shows Property Dialog
Only show properties on <ENTER> if not in editing mode.
2019-03-14 06:35:25 +01:00
Christian Hohnstaedt
1bc340a0ef Close #104: Also show sha256 digests of public keys
Print digest of public keys in the key details in different formats:

Print SHA256 SSH digest as used to by SSH users:
	ssh-keygen -l -f ~/.ssh/id_rsa.pub

Print SHA1 X509 key digest as shown in the
	Subject key identifier of a certificate

Print SHA256 digest as in:
	openssl pkey -pubout -outform DER < key.pem | sha256sum
as requested by this issue.

Refactored digesting functionality by a generic Digest()
function working with QByteArrays.
The function formatHash() now also expects a QByteArray input.
2019-03-14 06:35:24 +01:00
Christian Hohnstaedt
c41bbf9b23 Close #82: Renew CA ROOT Cert
Enable renewal option in the context menu
for self-signed CA certificates
2019-03-12 22:11:52 +01:00
Christian Hohnstaedt
56687bfc83 Verify imported keys thoroughly
When importing keys, a verification by signing and verifying
some random data is performed now.
2018-12-06 05:50:09 +01:00
Christian Hohnstaedt
736dac6250 Close #40 macOS: Crash after xca v2.0.1 quit
If I select "Quit xca" from the "xca" menu, the application exits gracefully.
Unify code paths between "Quit xca", CMD-Q, ALT-F4 and [X] button
by calling mainwindow->close() from qApplication->quit() slot.
2018-10-29 22:24:22 +01:00
Christian Hohnstaedt
73452bfa17 Close #37: XCA 2: EVP_DecryptFinal_ex:bad decrypt
This error occures when updating a legacy database not
protected by a password (empty password) and setting
a new password during update process.

When importing an old database with an empty password,
don't ask for a new one for the new database.
2018-10-29 22:24:22 +01:00
Christian Hohnstaedt
00bd36f19b Support for XCA as portable App
On Windows XCA goes in portable mode if no XCA registry entry is found.
On Mac and Unix it checks the XCA_PORTABLE environment to be non-empty.
In portable mode:
 - The current working directory is not written to the database
 - The configured language and history of opened databases is
   forgotten after a restart of XCA
 - No registry entry is required nor written.
 - No unexpected files are written to disk, except exported items.
 - Portable mode is displayed in the "About" dialog

If setup.exe or "make install" are not used,
 - XCA is not assigned as app for any file types
2018-10-25 16:43:19 +02:00
Christian Hohnstaedt
1953f7f1b0 Improve defaultdb / defaultlang handling. No functional change 2018-10-25 16:43:19 +02:00
Christian Hohnstaedt
ed53777e78 Fix compiler warnings
clang version 3.8.0-2ubuntu4
gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.10)
2018-10-25 16:43:19 +02:00
Christian Hohnstaedt
c965c01aea Add Miguel Romera <mrmsoftdonation@gmail.com> as new spanish maintainer 2018-10-24 18:58:59 +02:00
Christian Hohnstaedt
ba59e1419f Add Vinicius Ocker as portugese language maintainer 2018-10-24 18:49:19 +02:00
ViniciusOcker
54e07be305 add portuguese in brazil 2018-10-21 23:33:46 -03:00
Christian Hohnstaedt
96151564ee Activate polish language in the language menu
Add Jacek as Maintainer in the about dialog
2018-10-11 06:00:21 +02:00
Christian Hohnstaedt
0ccd5594ea Use QFile for "dbhistory" and "defaultdb" 2018-09-13 17:51:52 +02:00
Christian Hohnstaedt
e4f8f00b34 Inspired by #55: Allow manual override of CSR signed/unsigned mark
Via context menu the "Signed" flag may be toggled manually now.
2018-08-17 09:14:26 +02:00
Christian Hohnstaedt
c9cdb5d61c Close #55: Calculate "CSR signed" information from legacy database
XCA-2.x stores the "request signed" information permanently
in the database.
XCA-1.x dynamically calculated this information by looking
for certificates with the same public key.

When converting an XCA-1.x database, requests with a matching cert
are marked signed in the XCA-2.x database.
2018-08-17 06:03:52 +02:00
Christian Hohnstaedt
f4646a65b1 Close #50: Hang while importing 1.4.1 database into 2.1.0
Import the legacy database _before_ showing the content.
2018-08-01 18:06:12 +02:00
Christian Hohnstaedt
4ca33d6bcf Extend maximum width of settings(value) to 10000
The column configuration (table-header) may become pretty huge.
2018-07-24 15:38:48 +02:00
Christian Hohnstaedt
2682edacfd Close #48 The SKI tickbox isn't generating an SKI extension for CSRs
Since the first support of extensions for CSR (2005),
the Subject Key Identifier has been skipped.
Enable it, while still removing issuer extensions.

Better fix "Automatic X509v3 extensions for CSR"
2018-07-10 23:04:47 +02:00
Christian Hohnstaedt
c1189b0ff4 Add private key icon to the key name
in the certificate and request table
2018-07-06 06:05:40 +02:00
Christian Hohnstaedt
a8f54c82eb Refactor OID loading
The OID resolver now finds oids independent of the capitalization
2018-07-03 18:49:18 +02:00
Christian Hohnstaedt
bdfa10d4d5 Close #45: Unable to view Public Key
Allow displaying the public key of a certificate
or request without importing it.

When importing certificates or CRLs,
display the issuer if it exists in the database.
2018-07-01 14:58:23 +02:00
Christian Hohnstaedt
96d8c5cf37 Generalize handling of DateTime columns 2018-06-26 23:32:40 +02:00
Christian Hohnstaedt
b10b4f7a53 Inspired by #42: display insertion date relative
Easy to find the most recent entry, because it says
"3 seconds ago"
2018-06-25 21:20:25 +02:00
Christian Hohnstaedt
b32e974449 Fix duplicate entries in remote database type selection 2018-06-25 21:20:25 +02:00
Christian Hohnstaedt
3c87ff1ea0 Remove code duplication with CSR information
Unstructured name and challange password use the
distinguished name code (setupExplicitInputs)
2018-06-22 06:21:37 +02:00
Christian Hohnstaedt
5703ad855a Separate the internal name from distinguished name 2018-06-22 06:20:33 +02:00
Christian Hohnstaedt
15d33fdcfc Make the dynamic DN entry adaption configurable.
If the option is selected, the behavior from the
previous commit is enabled. Otherwise, the
explicit DN entries stay as configured.
2018-06-21 20:29:45 +02:00
Christian Hohnstaedt
efa29c0e7c Inspired by #39: Dynamically adjust explicit DN entries
When editing a template or applying a template during
certificate or request generation, the explicit entries
are reordered by the current order of the template subject.

All entries that are mentioned in the explicit DN entry
configuration setting, but not part of the template DN
are appended.
2018-06-21 20:28:23 +02:00
Christian Hohnstaedt
2a0f96e810 Close #39: Subject entries shuffled
Strictly keep order of DistinguishedName entires.

This fixes a bug introduced by dcd940b6b8
 "SF Feat. Req. #57 More options for Distinguished Name"
2018-06-21 20:13:21 +02:00
Christian Hohnstaedt
22966937de Close #36: Support adding CN to X509v3 SAN automatically
Translate the special text "DNS:copycn" in the SAN to
the final common name.

Add checkobox "Copy Common Name" to the SAN Edit box,
for a user-friendly editing of the "DNS:copycn"

During certificate creation, an empty common name together with
"DNS:copycn" in the SAN will raise a warning message and the
opportunity to change the settings.

Change the SAN in the HTTP-server XCA template from
"DNS:your.server.name.here" to "DNS:copycn" to already
take advantage of this feature in the default template.
2018-05-19 22:14:08 +02:00
Christian Hohnstaedt
4b2375101b Transform regexp based IP validator into its own QValidator class 2018-05-19 18:10:13 +02:00
Christian Hohnstaedt
f0e6dc1f1b Close #35: Configurable size of serial number.
Allow to configure the previously fixed serial number length
of 64 bit between 8 and 256 bit
2018-05-19 18:09:28 +02:00
Christian Hohnstaedt
0c8df14b7e Close #27: Configurable certificate expiry warning threshold
Add configuration values in the Options dialog to
control the time when certificates get marked yellow and
the expiration alarm time in calendar entries.
2018-05-11 09:19:12 +02:00
Christian Hohnstaedt
dc36728df8 Generate calender (.ics) files for certificate and CRL expiries
Also support consolidated calendar entries for a CA,
containing the CA, all issued certificates and the CRL expiry dates.
2018-05-10 12:49:59 +02:00
Christian Hohnstaedt
c65d9e59ea Close #31: Closing certificate details window toggles tree folding
Disable default double-click action of the tree-view
2018-04-29 16:17:45 +02:00
Christian Hohnstaedt
4821a181e9 Issue #20: Unable to chose database type
Always fill database select box, even if no previous
remote database connection known.
2018-04-18 10:06:46 +02:00
Christian Hohnstaedt
ae84d8ef0f About dialog is readonly 2018-04-10 07:18:43 +02:00
Christian Hohnstaedt
324b75527c Merge branch '8k_keys' of https://github.com/jasperla/xca into jasperla-8k_keys 2018-04-10 06:00:36 +02:00
Christian Hohnstaedt
3ee2fc4015 Document current working directory in the About dialog 2018-04-09 05:17:11 +02:00
Jasper Lievisse Adriaanse
327c863ed6 Allow for generating keys of 8192 bits in size 2018-04-07 22:06:55 +02:00
Christian Hohnstaedt
45ea4e9708 Open database before starting a transaction 2018-04-03 05:20:54 +02:00