X Certificate and Key management
Go to file
Yaroslav Isakov 46c0f7ed25 Fix OpenSSL 3.0 engine asking two times for sign
In commit 9767a3dca7
OpenSSL changed sign behavior, that now it calls sign mechanism two
times - first with NULL output buffer, to get size of it, for next call.
This causes two sign operations in token for ED25519, so, let's detect
NULL buffer and return size of signature.

I haven't tested other type of keys - it's possible that they have
the same issue.
2023-05-16 09:49:46 +02:00
.github/workflows Refactor source file inclusion 2022-09-07 20:01:25 +02:00
cmake Add support for Qt6 2022-08-31 00:09:37 +02:00
doc Matrix with QT versions 2022-09-02 17:02:40 +02:00
img Fix images and icons on windows 2022-09-07 20:01:25 +02:00
lang Matrix with QT versions 2022-09-02 17:02:40 +02:00
lib Fix OpenSSL 3.0 engine asking two times for sign 2023-05-16 09:49:46 +02:00
misc Add support for Qt6 2022-08-31 00:09:37 +02:00
release Support building with xcodebuild 2022-08-07 22:30:32 +02:00
test improve autotest 2009-11-25 09:01:49 +01:00
ui Add PKCS12 enc algo setting and use it when exporting PKCS12 2022-10-06 15:32:30 +02:00
widgets Fix deprecation warnings 2023-05-14 21:49:13 +02:00
xcf Add first shot of installer dialog Image 2020-01-21 21:34:31 +01:00
.gitignore Switch from autotools/qmake to cmake 2021-06-01 17:48:37 +02:00
AUTHORS Justify list of authors 2015-08-11 07:31:51 +02:00
changelog Prepare XCA 2.4.0 2021-05-07 22:40:29 +02:00
CMakeLists.txt Adaptions for QT 6.5 and macos 2023-05-14 21:41:47 +02:00
COPYRIGHT Adapt build methods for Apple developer account 2021-04-24 23:16:36 +02:00
Dockerfile Update Documentation and Dockerfile 2022-07-11 23:09:47 +02:00
INSTALL.docker Update Documentation and Dockerfile 2022-07-11 23:09:47 +02:00
INSTALL.mac Adaptions for QT 6.5 and macos 2023-05-14 21:41:47 +02:00
local.h.in Switch from autotools/qmake to cmake 2021-06-01 17:48:37 +02:00
README.md Improve windows compatibility 2022-08-31 00:01:06 +02:00
VERSION.txt Rename VERSION to VERSION.txt 2021-11-20 02:12:02 +01:00

XCA -- X Certificate and Key Management

CMake

Release Notes

  • The latest release is 2.4.0
  • Most notable changes
    • Add support for Ed25519 keys
    • Add commandline support (e.g. generate CRL)
  • Fix a lot of bugs
  • Since version 2 of XCA the database format changed to SQL Don't try to open it with older versions of XCA (< 1.4.0). They will corrupt the database.
  • Please report issues on github https://github.com/chris2511/xca/issues

Changelog:

A detailled changelog can be found here:

http://hohnstaedt.de/xca/index.php/software/changelog

Documentation

This application is documented in the Help menu and here:

https://www.hohnstaedt.de/xca/index.php/documentation/manual

Build from Source

Dependencies

To build XCA you need:

Linux / Unix

  • Install the dependencies
    sudo apt install build-essential libssl-dev pkg-config qtbase5-dev qttools5-dev-tools libqt5sql5 libqt5help5 cmake qttools5-dev python3-sphinx
    
  • Clone: git clone https://github.com/chris2511/xca.git
  • Configure: cmake -B build xca
  • Make: cmake --build build -j5
  • Install: sudo cmake --install build
  • Or install local and copy later as root: DESTDIR=DEST cmake --install build --prefix /usr

Apple macos

  • Install the dependencies
    xcode-select --install
    brew install openssl qt5 python3 cmake
    pip3 install sphinx
    
  • Clone: git clone https://github.com/chris2511/xca.git
  • Configure: cmake -B build xca
  • Make: cmake --build build -j5
  • Build the DMG: cd build && cpack
  • Build the PKG: cd build && cpack -G productbuild

XCA can be used with Xcode after initializing the directory with: cmake -G Xcode -B .

Windows

  • Install the dependencies

    • Install Python for windows from the store or https://www.python.org/downloads/windows/
    • Install OpenSSL from here: https://slproweb.com/download/Win64OpenSSL-1_1_1m.msi and verify the sha256 from https://github.com/slproweb/opensslhashes/blob/master/win32_openssl_hashes.json
    • To install the Qt libraries, cmake and the MinGW compiler aqtinstall is used. Sphinx is used to generate the documentation
      pip3 install sphinx aqtinstall
      
    • Add the PATH shown by pip to your PATH
    • Install Qt, cmake and the MinGW toolchain
      aqt install-qt windows desktop 5.15.2 win64_mingw81
      aqt install-tool windows desktop tools\_cmake qt.tools.cmake.win64
      aqt install-tool windows desktop tools\_mingw qt.tools.win64\_mingw810
      aqt install-tool windows desktop tools\_vcredist qt.tools.vcredist_64
      
    • If 7z is missing, install it from the store. 7-Zip File Manager (unofficial) or from 7-zip.org
    • Add cmake, MinGW, OpenSSL and Qt5 to your Path
      %USERPROFILE%\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\Scripts;
      %USERPROFILE%\AppData\Local\Microsoft\WindowsApps;
      %USERPROFILE%\Tools\CMake_64\bin;
      %USERPROFILE%\Tools\mingw810_64\bin;
      %USERPROFILE%\5.15.2\mingw81_64\bin;
      
    • Create Qt5_DIR environment variable:
      %USERPROFILE%\5.15.2\mingw81_64\lib\cmake
      
    • Install https://wixtoolset.org/releases/ if you want to create the installer
    • Optional for the remote database connections:
  • Clone: git clone https://github.com/chris2511/xca.git

  • Configure: cmake -B build -G "MinGW Makefiles" xca

  • Make: cmake --build build -j5

  • Build the MSI installer: cd build && cpack