openssl-agent/0.17.0

[brief]

OpenSSL key agent

This package contains the OpenSSL key agent and client utilities.

Note that this project is not affiliated with OpenSSL. OpenSSL is a
registered trademark owned by the OpenSSL Software Foundation used
with permission.

The aim of these utilities is to provide an openssl-rsautl(1) drop-in
replacement for performing cryptographic operations using a private key
that is unlocked for the session, similar to OpenSSH's ssh-agent(1).

The typical usage is as follows:

1. Start the OpenSSL key agent which prompts for a password/PIN for the
   specified private key. The agent then forks off the daemon which unlocks
   the key, opens a UNIX domain socket, and waits for cryptographic operation
   requests from the OpenSSL client.

   The agent also prints to stdout a shell script fragment that sets the
   environment variables necessary for locating the agent.

2. Source the script fragment printed by the agent into the shell.

3. Run the OpenSSL client to perform a cryptographic operation.

For example:

$ openssl-agent-pkcs11 "pkcs11:object=SIGN%20key" >agent.env
Enter PIN for PKCS#11:*******

$ source agent.env
Agent pid 14696

$ openssl-client rsautl -sign -keyform engine -engine pkcs11 \
-inkey "pkcs11:object=SIGN%20key" <<<test >signature

...

$ kill 14696

By default, openssl-agent-pkcs11(1) uses opensc-pkcs11 module, unless a
different one is explicitly specified in the private key URL (see RFC7512
Section "The PKCS #11 URI Scheme" for details).

To use opensc-pkcs11, make sure that the following packages are installed in
the system:

Debian/Ubuntu: opensc-pkcs11
Fedora/RHEL:   opensc

Note that for some Debian versions the opensc-pkcs11 package has the missing
libpcsclite1 dependency, so make sure it is also installed.

For more information see:

https://build2.org/

See the NEWS file for the user-visible changes from the previous release.

See the LICENSE file for the distribution conditions.

See the INSTALL file for the prerequisites and installation instructions.

See the doc/ directory for documentation.

Send questions, bug reports, or any other feedback to the users@build2.org
mailing list. You can post without subscribing. See https://lists.build2.org
for searchable archives, posting guidelines, etc.
version 0.17.0
license MIT
repository https://pkg.cppget.org/1/alpha
download openssl-agent-0.17.0.tar.gz
sha256 a84c4b5318754c5d3212c769b5af0012468ee82d7c03c3ed633d95c4cdc413c5
project build2
url build2.org
doc-url build2.org/doc.xhtml
src-url git.build2.org/cgit/openssl-agent/tree/
topics cryptographic tokencryptography

Depends (1)

libbutl ^0.17.0

Requires (1)

c++14

Reviews

fail 0
pass 1

Builds

toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_rhel_9-gcc_11-bindist
timestamp 2025-08-24 12:33:00 UTC (01:15:26 hours ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_fedora_40-gcc_14-bindist
timestamp 2025-08-24 05:28:44 UTC (08:19:43 hours ago)
result success | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_18_libc++
timestamp 2025-08-24 04:46:30 UTC (09:01:56 hours ago)
result success | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_18_libc++-static_O3
timestamp 2025-08-24 04:45:42 UTC (09:02:44 hours ago)
result success | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_18_libc++-O3
timestamp 2025-08-24 04:45:36 UTC (09:02:50 hours ago)
result success | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_18-static_O3
timestamp 2025-08-24 04:42:53 UTC (09:05:33 hours ago)
result success | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_18-O3
timestamp 2025-08-24 04:41:40 UTC (09:06:46 hours ago)
result success | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_18
timestamp 2025-08-24 04:41:15 UTC (09:07:11 hours ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_rhel_8-gcc_8-bindist
timestamp 2025-08-23 17:21:49 UTC (20:26:37 hours ago)
result success | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_17_libc++
timestamp 2025-08-23 15:22:24 UTC (22:26:03 hours ago)
result success | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-clang_17
timestamp 2025-08-23 15:14:40 UTC (22:33:46 hours ago)
result success | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-gcc_13
timestamp 2025-08-23 13:41:03 UTC (01 00:07:24 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_ubuntu_24.04-gcc_13-bindist
timestamp 2025-08-22 22:41:38 UTC (01 15:06:49 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_12-relocatable
timestamp 2025-08-22 22:08:11 UTC (01 15:40:15 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_12-bindist
timestamp 2025-08-22 22:07:06 UTC (01 15:41:21 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_14-static_O3
timestamp 2025-08-22 21:38:54 UTC (01 16:09:33 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_14-O3
timestamp 2025-08-22 21:36:06 UTC (01 16:12:20 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_14-ndebug_O3
timestamp 2025-08-22 21:33:54 UTC (01 16:14:33 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_14
timestamp 2025-08-22 21:31:33 UTC (01 16:16:53 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-freebsd13.3
tgt config freebsd_13-clang_17
timestamp 2025-08-22 21:16:33 UTC (01 16:31:53 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-freebsd14.1
tgt config freebsd_14-clang_18-relocatable
timestamp 2025-08-22 21:03:52 UTC (01 16:44:34 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-freebsd14.1
tgt config freebsd_14-clang_18-static_O3
timestamp 2025-08-22 21:01:21 UTC (01 16:47:05 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_17_libc++
timestamp 2025-08-22 20:58:54 UTC (01 16:49:32 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-freebsd14.1
tgt config freebsd_14-clang_18-O3
timestamp 2025-08-22 20:56:56 UTC (01 16:51:30 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_17
timestamp 2025-08-22 20:56:28 UTC (01 16:51:59 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-freebsd14.1
tgt config freebsd_14-clang_18
timestamp 2025-08-22 20:54:11 UTC (01 16:54:15 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-gcc_13.1
timestamp 2025-08-22 20:54:02 UTC (01 16:54:24 days ago)
result success | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-gcc_14-static_O3
timestamp 2025-08-22 06:34:11 UTC (02 07:14:15 days ago)
result success | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-gcc_14-ndebug_O3
timestamp 2025-08-22 06:32:22 UTC (02 07:16:05 days ago)
result success | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-gcc_14
timestamp 2025-08-22 06:23:58 UTC (02 07:24:28 days ago)
result success | log | rebuild
toolchain public-0.17.0
target aarch64-linux-gnu
tgt config linux_debian_12-gcc_14-O3
timestamp 2025-08-22 06:22:42 UTC (02 07:25:44 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_ubuntu_22.04-gcc_11-bindist
timestamp 2025-08-22 06:18:06 UTC (02 07:30:20 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_11-gcc_10.2-bindist
timestamp 2025-08-22 06:13:59 UTC (02 07:34:28 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_9-gcc_8.4
timestamp 2025-08-22 06:01:11 UTC (02 07:47:16 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_11-gcc_11.3
timestamp 2025-08-22 05:58:13 UTC (02 07:50:14 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_9-clang_8.0_libc++
timestamp 2025-08-22 05:57:19 UTC (02 07:51:07 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_9-clang_7.0_libc++
timestamp 2025-08-22 05:56:39 UTC (02 07:51:47 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_10-gcc_10.2
timestamp 2025-08-22 05:56:29 UTC (02 07:51:57 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_16.0_libc++
timestamp 2025-08-22 05:55:51 UTC (02 07:52:35 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_9-clang_6.0_libc++
timestamp 2025-08-22 05:53:11 UTC (02 07:55:15 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_9-clang_8.0
timestamp 2025-08-22 05:52:59 UTC (02 07:55:28 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_9-gcc_7.4
timestamp 2025-08-22 05:52:31 UTC (02 07:55:55 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_15.0_libc++
timestamp 2025-08-22 05:52:18 UTC (02 07:56:08 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_9-clang_7.0
timestamp 2025-08-22 05:51:59 UTC (02 07:56:27 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_9-clang_6.0
timestamp 2025-08-22 05:51:52 UTC (02 07:56:35 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_16.0
timestamp 2025-08-22 05:51:40 UTC (02 07:56:46 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_8-gcc_4.9
timestamp 2025-08-22 05:51:19 UTC (02 07:57:07 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_11-clang_14.0_libc++
timestamp 2025-08-22 05:51:11 UTC (02 07:57:15 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_15.0
timestamp 2025-08-22 05:51:01 UTC (02 07:57:25 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_11-clang_13.0_libc++
timestamp 2025-08-22 05:49:43 UTC (02 07:58:44 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_10-clang_9.0_libc++
timestamp 2025-08-22 05:49:37 UTC (02 07:58:49 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_11-clang_14.0
timestamp 2025-08-22 05:48:07 UTC (02 08:00:20 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_10-clang_12.0_libc++
timestamp 2025-08-22 05:47:57 UTC (02 08:00:29 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_10-clang_11.0_libc++
timestamp 2025-08-22 05:47:23 UTC (02 08:01:03 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_10-clang_10.0_libc++
timestamp 2025-08-22 05:47:10 UTC (02 08:01:16 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_11-clang_13.0
timestamp 2025-08-22 05:46:55 UTC (02 08:01:31 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_10-clang_9.0
timestamp 2025-08-22 05:46:43 UTC (02 08:01:43 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_10-clang_12.0
timestamp 2025-08-22 05:46:29 UTC (02 08:01:58 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_10-clang_11.0
timestamp 2025-08-22 05:46:20 UTC (02 08:02:06 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_10-clang_10.0
timestamp 2025-08-22 05:46:02 UTC (02 08:02:24 days ago)
result success | log | rebuild
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_10-gcc_9.3
result unbuilt
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_11-gcc_12.1
result unbuilt
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_18
result unbuilt
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_18-O3
result unbuilt
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_18-static_O3
result unbuilt
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_18_libc++
result unbuilt
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_18_libc++-O3
result unbuilt
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_debian_12-clang_18_libc++-static_O3
result unbuilt
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_fedora_39-gcc_13-bindist
result unbuilt
toolchain public-0.17.0
target x86_64-linux-gnu
tgt config linux_ubuntu_16.04-clang_3.7_libc++
result unbuilt
target x86_64-apple-darwin22.5.0
tgt config macos_13-clang_15.0
result excluded (currently only supported on Linux and BSD)
target x86_64-apple-darwin23.5.0
tgt config macos_14-clang_15.0
result excluded (currently only supported on Linux and BSD)
target x86_64-apple-darwin23.5.0
tgt config macos_14-clang_15.0-O3
result excluded (currently only supported on Linux and BSD)
target x86_64-apple-darwin23.5.0
tgt config macos_14-clang_15.0-static_O3
result excluded (currently only supported on Linux and BSD)
target x86_64-apple-darwin23.5.0
tgt config macos_14-gcc_14_homebrew
result excluded (currently only supported on Linux and BSD)
target x86_64-apple-darwin23.5.0
tgt config macos_14-gcc_14_homebrew-O3
result excluded (currently only supported on Linux and BSD)
target x86_64-apple-darwin23.5.0
tgt config macos_14-gcc_14_homebrew-static_O3
result excluded (currently only supported on Linux and BSD)
target x86_64-w64-mingw32
tgt config windows_10-gcc_13.2_mingw_w64
result excluded (currently only supported on Linux and BSD)
target x86_64-w64-mingw32
tgt config windows_10-gcc_13.2_mingw_w64-O2
result excluded (currently only supported on Linux and BSD)
target x86_64-w64-mingw32
tgt config windows_10-gcc_13.2_mingw_w64-static_O2
result excluded (currently only supported on Linux and BSD)
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-msvc_17.8
result excluded (currently only supported on Linux and BSD)
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-msvc_17.8-O2
result excluded (currently only supported on Linux and BSD)
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-msvc_17.8-static_O2
result excluded (currently only supported on Linux and BSD)
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-msvc_17.10
result excluded (currently only supported on Linux and BSD)
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-msvc_17.10-O2
result excluded (currently only supported on Linux and BSD)
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-msvc_17.10-static_O2
result excluded (currently only supported on Linux and BSD)
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-clang_17_msvc_msvc_17.10
result excluded (currently only supported on Linux and BSD)
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-clang_18_llvm_msvc_17.10
result excluded (currently only supported on Linux and BSD)
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-clang_18_llvm_msvc_17.10-O2
result excluded (currently only supported on Linux and BSD)
target x86_64-microsoft-win32-msvc14.3
tgt config windows_10-clang_18_llvm_msvc_17.10-static_O2
result excluded (currently only supported on Linux and BSD)

Changes

See https://git.build2.org/cgit/openssl-agent/log/ for the change log.