Commit Graph

189 Commits

Author SHA1 Message Date
Christian Hohnstaedt
d1a34b8329 Fix Hash algorithm when converting certificate to PKCS#10
Use the one from the certificate instead of SHA1
2017-10-04 23:21:02 +02:00
Christian Hohnstaedt
1ae80c1af7 Do not apply the default template when creating a similar cert 2017-07-12 19:35:21 +02:00
Christian Hohnstaedt
4ef4c9ad87 SF #116 db_x509.cpp:521: Mismatching allocation and deallocation: cert
free(cert) -> delete cert
2017-07-10 09:12:37 +02:00
Patrick Monnerat
ad6c2baae5 Add support for OpenSSL 1.1.0
The API changed heavily. New functions arrived, old functions
disappeared and many structures became opaque.

This version of the patch implements pkcs11 signing as follows:
- openssl < 1.0.0: rsa & dsa without engine
- openssl 1.0.x: rsa, dsa & ec with engine
- openssl >= 1.1.0: rsa, dsa & ec without engine

In the operation, we therefore also gain implementation of dsa signing for openssl < 1.0.0 (ec disabled because EC_KEY_METHOD was not yet invented!).

I've given up trying to use a PKEY_ENGINE with openssl 1.1: seems not possible anymore.

I've succeeded compiling the patched xca with openssl 0.9.8n, 1.0.2j and 1.1.0e.
I've successfully tested pkcs11 signing using softhsm with openssl 1.0.2j and 1.1.0e.

The patch also removes gcc7 new warnings.
2017-06-19 08:32:39 +02:00
Adam Dawidowski
0d34bc1c1c Extend generating an OpenSSL "index.txt"
Updated patch adds another export option automating the creation
of multiple index.txt files to be used with multiple ocsp responders.

New export option is available via command line (-I index.txt) and
the Extras menu (Extra->Export Certificate Index hierarchy).

The option causes the creation of an index.txt file containing
index records for all the children certificates of a parent.
The filenames are generated using the supplied name as prefix
and append a dot and the simplified Internal Name
(the Internal Name stripped of non-alphanumeric characters except underscores).
2016-09-06 20:03:55 +02:00
PF4Public
c0130feafa Some pedantic edits 2016-04-09 06:40:39 +02:00
Adam Dawidowski
e94e9133b1 Support generating an OpenSSL "index.txt"
XCA currently lacks support for generating an index.txt.
Such a file gets created and maintained when using CA
features in openssl. As mentioned here:
https://sourceforge.net/p/xca/discussion/209946/thread/6cbc727c/#2310
such a file can be used by Openssl's built-in OCSP responder.
Additionally, it can be used for configuring a cron job for
reminding of certificate expiration.

Certificate index export is added in 3 places:
 - command line (-i index.txt),
 - the Extras menu (Extra->Export Certificate Index) and
 - the selected file(s) export option in the context menu
   on the Certificates tab (Export->File, Export Format:
    Certificate Index file).

Please note that SubjectDN generated by this feature has
different formatting than the one generated by openssl.
2016-04-09 06:40:39 +02:00
Christian Hohnstaedt
e5541c6d67 SF. Bug. #81 Make xca qt5 compatible
Extend XCA to also compile against Qt5
Remove directory from Qt includes
2015-09-17 18:42:42 +02:00
Christian Hohnstaedt
68cf3615df Fix saving a single certificate 2015-05-20 13:14:21 +02:00
Christian Hohnstaedt
68781ff47f Fix compile errors 2015-05-19 19:16:17 +02:00
Christian Hohnstaedt
854d0dbde5 Minor fixes, remove debugging output 2015-05-18 17:51:20 +02:00
Christian Hohnstaedt
75a6d117f3 Refactor context menu
Better support multiple selections
 - Export all selected items into one PEM file
 - Batch Revoke/unrevoke/renew of many selected certificates
   of the same issuer
 - allow exporting templates as PEM

Add Feat. Reg. #83 Option to revoke old certificate when renewing

Always put all signed certificate to the newest CA.
If a CA certificate is renewed, all certificates issued by
the old CA are now shown as signed by the new one.
2015-05-17 09:17:04 +02:00
Christian Hohnstaedt
90f351b2cb Refactor CRL handling 2015-04-20 18:25:59 +02:00
Christian Hohnstaedt
25a53441e9 Certificate export: Add option to export selected certificates to PEM or PKCS#7
Using the context menu only handles the current item.
This is now reflected by resetting the selection in case of
a context menu event
2015-04-15 08:41:29 +02:00
Christian Hohnstaedt
58142b487c Fix syntax errors in documentation and english phrases
Thx Patrick Monnerat <Patrick.Monnerat@datasphere.ch>
2015-04-10 19:27:05 +02:00
Christian Hohnstaedt
c5833ebe69 Separate Certificate revocation and CRL expiry in the Columns 2015-04-09 15:06:46 +02:00
Christian Hohnstaedt
67d270b9ae Consolidate Export dialogs 2015-04-06 00:04:35 +02:00
Christian Hohnstaedt
58bf2816c2 Also support creating similar requests 2015-04-04 13:13:49 +02:00
Christian Hohnstaedt
24927ad14d Reactivate PKCS#7 2015-04-03 17:56:55 +02:00
Christian Hohnstaedt
595300617f SF Feat. Req. #80 Create new certificate, based on existing certificate 2015-04-03 14:52:39 +02:00
Christian Hohnstaedt
c0187b6cb3 Move transforming functions (cert/req -> pubkey/template or cert -> req) to its own submenu 2015-03-23 16:48:51 +01:00
Christian Hohnstaedt
a88b86ad9d Select the translation language via File menu 2014-11-20 20:14:25 +01:00
Christian Hohnstaedt
f5434dd6f3 SF Feat. Req. #75 show SHA-256 digest
.. in the details dialog and as extra column in the table
2014-11-18 17:55:11 +01:00
Christian Hohnstaedt
40f33d37f0 SF Feat. Req. #76 Export private keys to clipboard
Before exporting the private key an acknowledge is
required. Here you may opt to only export the public key.

While at it, display the internal Name in export dialogs
2014-11-01 18:51:39 +01:00
Christian Hohnstaedt
9710a78592 First preparation of version 1.0.0
update changelog and documentation
avoid warnings about unused variables
2014-04-11 19:29:46 +02:00
Christian Hohnstaedt
8168ca5181 QMessageBox: protect against HTML parsing
The default message box displays the message as HTML
Don't do that.

Thanks to Artur Czyz (artur_czyz at wp.pl) for finding it.
2014-04-11 19:29:45 +02:00
Christian Hohnstaedt
aebc916a7b Overwite extensions from the PKCS#10 request by local extensions
Also avoid error message if a request is self-signed
and no unused key is available, but the private key of the request
is available.
2013-11-22 00:18:16 +01:00
Christian Hohnstaedt
c614197d74 Fix Double free in a1time
by addingt copy constructor and assignment operator,
not copying the "a1time" from the origin

drop unused variables found during investigation
2012-05-12 08:45:26 +02:00
Christian Hohnstaedt
38ed0b60b5 Update Copyright dates 2012-05-06 11:16:44 +02:00
Christian Hohnstaedt
5fe977f1d6 disable creating a request from a cert if no private key is available
Found by Patrick Monnerat, Thanks.
2011-07-12 18:51:27 +02:00
Christian Hohnstaedt
71f23803e7 fix minor memory leak 2011-07-11 19:05:35 +02:00
Christian Hohnstaedt
b622e64209 consolidate Password and Pin input dialogs
change storage type of passwords from char[] to QByteArray
Create PwDialog class and drop passWrite and passRead
Create Passwd class derived from QBytearray
move PKCS12 password input to PwDialog
2011-04-30 07:53:26 +02:00
Christian Hohnstaedt
bd961eface avoid unused-but-set-variables 2011-03-01 06:46:59 +01:00
Christian Hohnstaedt
7155c65ecb support exporting requests and certs as openssl config file 2011-01-24 18:23:02 +01:00
Christian Hohnstaedt
ca3129d07e Improve XCA witout EC
opening a database with EC keys and certs is possible now.
2011-01-10 07:02:24 +01:00
Christian Hohnstaedt
9f8ce9e9f8 Feature Request [3058195] Export directly to the clipboard
Add Export->Clipboard context menu item to
Certificates, Requests and CRLs
2010-10-01 06:46:22 +02:00
Christian Hohnstaedt
9f237b923c open database with 0600 permissions
also avoid unused varaibles
2010-08-26 06:39:30 +02:00
Christian Hohnstaedt
9f7840e012 merge cert details and request details 2010-08-24 07:27:34 +02:00
Christian Hohnstaedt
58a5557f96 don't allow duplicate key names 2010-08-19 18:36:42 +02:00
Christian Hohnstaedt
d89f56d9a4 Bug #3047703 not only mark the first CSR as signed
All CSRs with this keay are marked as signed or not.
2010-08-19 07:17:42 +02:00
Christian Hohnstaedt
bb565cdb70 Amendment to previous commit 2010-08-17 17:46:55 +02:00
Christian Hohnstaedt
3d5f196753 Fix Bug [3047029] CSR remains signed while Cert is deleted
check sign-status after deleting a certificate

also fix another double-word "findByByPubKey" -> "findByPubKey"
2010-08-17 17:21:06 +02:00
Christian Hohnstaedt
5383c8c43f Consolidate export dialogs 2010-08-07 13:40:25 +02:00
Christian Hohnstaedt
3a92d46362 fix crash during item-import
replace reference to the view by signals/slots
2010-08-05 07:22:00 +02:00
Christian Hohnstaedt
3bb40f477d fix column property management
remember size and autoResize for every column
use own dataformat for storage

add "internal name of the key" column for certs and requests
2010-08-04 08:23:19 +02:00
Christian Hohnstaedt
ced687be5b Improve column handling
right-align numeric columns and make them monospaced.
Save their current state in the database.
Also add column-menu to the other context menu

fix minor bugs

Support for "Unstructured Name" and "challange password" columns
	in the request-table
Support for name hash as used by OpenSSL to lookup certs.
	As table column and as distinguished name information
2010-08-01 06:50:49 +02:00
Christian Hohnstaedt
603cc7d9be Improve Columns of all Items Feature Request [849713]
Keys: Sort Keysize numerical
Certs: CA, fingerprints, start date (notBefore)
Crl: CRL number , Last update

Requests, Crls, Templates, Certs: All subject items and the full name
2010-07-30 06:54:14 +02:00
Christian Hohnstaedt
20b166488f Improve CRL generation [3035294]
Add CRLNumber for the CRL.
Add InvalidityDate and CRL-reason for each entry.

CRL-hold-instruction-code not supported, yet.
2010-07-29 07:41:49 +02:00
Christian Hohnstaedt
9085ecbd4e More support for public keys
Extract public key from cert and request
Show public keys in requests- and cert-details in red
Allow using public keys for certs. Useful if not selfsigning
2010-07-22 06:57:32 +02:00
Christian Hohnstaedt
b0815de30e Fix error whether to store certs on the Smart card 2010-07-16 18:13:21 +02:00