g3/g3keymess
Zhang Jingqiang 055195ab32 update doc
2025-05-19 12:07:38 +08:00
..
debian bum deb compat to 13 2025-05-16 15:48:45 +08:00
examples g3keymess: add worker example config 2025-01-03 16:42:19 +08:00
proto switch to use SPDX license identifier and update copyright year 2025-05-16 18:30:35 +08:00
service g3keymess version 0.4.2 2025-05-13 21:25:13 +08:00
src switch to use SPDX license identifier and update copyright year 2025-05-16 18:30:35 +08:00
utils/ctl switch to use SPDX license identifier and update copyright year 2025-05-16 18:30:35 +08:00
build.rs switch to use SPDX license identifier and update copyright year 2025-05-16 18:30:35 +08:00
Cargo.toml g3keymess version 0.4.2 2025-05-13 21:25:13 +08:00
CHANGELOG g3keymess version 0.4.2 2025-05-13 21:25:13 +08:00
g3keymess.spec g3keymess version 0.4.2 2025-05-13 21:25:13 +08:00
README.md update doc 2025-05-19 12:07:38 +08:00

docs

g3keymess

g3keymess is a server implementation of Cloudflare Keyless protocol.

How to build

You need to follow the dev-setup guide to set up your build environment first.

To build debug binaries:

cargo build -p g3keymess -p g3keymess-ctl

To build release binaries:

cargo build --profile release-lto -p g3keymess -p g3keymess-ctl

See Packaging if you want to build binary packages or docker images.

Features

g3keymess dynamically links to libcrypto on the system as the crypto engine by default.

You can specify the following feature flags to try other crypto engines:

  • vendored-openssl

    Use the latest OpenSSL.

  • vendored-boringssl

    Use BoringSSL.

  • vendored-tongsuo

    Use Tongsuo.

Hardware

It's possible to use hardware crypto engines by using OpenSSL PROVIDERS.

Use the following compilation feature flags:

cargo build --features openssl-async-job

The system default libcrypto should be used, and the hardware engine should be compiled against it also.

The hardware engine should be enabled in openssl.cnf. If you don't want to change the default openssl.cnf, you can create a new one and export it as environment variable OPENSSL_CONF.

Examples

See examples directory.