FreeBSD Manual Pages
JOSE-JWK-GEN(1) JOSE-JWK-GEN(1) NAME jose-jwk-gen - Creates a random JWK for each input JWK template SYNOPSIS jose jwk gen -i JWK [-o JWK] OVERVIEW The jose jwk gen command generates a key from one or more JWK(Set) tem- plates. If a single template is given as input, a single JWK will be out- put. However, if multiple templates are given as input, a single JWKSet will be output containing all the keys. The best way to generate a key is to specify the algorithm it will be used with in the "alg" property of the JWK template. This method should be pre- ferred since, when generating from an algorithm, an appropriate "key_ops" parameter will be emitted automatically. Further, having a JWK with the al- gorithm already specified will assist algorithm inference when encrypting or signing. Alternatively, you can generate a key by specifying its key type ("kty") JWK property, along with the required type-specific generation parameter. See the examples below for how to do this for each key type. If the type-specific generation parameter is non-standard (for example: "bytes" and "bits"), it will be removed excluded from the output. OPTIONS * -i JSON, --input=JSON : Parse JWK(Set) template from JSON * -i FILE, --input=FILE : Read JWK(Set) template from FILE * -i -, --input=- : Read JWK(Set) template from standard input * -o FILE, --output=FILE : Write JWK(Set) to FILE * -o -, --output=- : Write JWK(Set) to standard input * -s, --set : Always output a JWKSet EXAMPLES Generate three keys, each targeting a different algorithm: $ jose jwk gen -i '{"alg":"HS256"}' -o oct.jwk $ jose jwk gen -i '{"alg":"RS256"}' -o rsa.jwk $ jose jwk gen -i '{"alg":"ES256"}' -o ec.jwk Generate three keys using key parameters rather than algorithms: $ jose jwk gen -i '{"kty":"oct","bytes":32}' -o oct.jwk $ jose jwk gen -i '{"kty":"RSA","bits":4096}' -o rsa.jwk $ jose jwk gen -i '{"kty":"EC","crv":"P-256"}' -o ec.jwk Create multiple keys at once using a JWKSet template: $ jose jwk gen \ -i '{"keys":[{"alg":"HS256"},{"alg":"ES256"}]}' \ -o keys.jwkset Create multiple keys at once using multiple JWK templates: $ jose jwk gen \ -i '{"alg":"HS256"}' \ -i '{"alg":"ES256"}' \ -o keys.jwkset AUTHOR Nathaniel McCallum <npmccallum@redhat.com> SEE ALSO jose-alg(1), jose-jwe-dec(1), jose-jwe-enc(1), jose-jwk-exc(1), jose-jwk-pub(1), jose-jwk-thp(1), jose-jwk-use(1), jose-jws-sig(1), jose-jws-ver(1), 07/30/2026 JOSE-JWK-GEN(1)
NAME | SYNOPSIS | OVERVIEW | OPTIONS | EXAMPLES | AUTHOR | SEE ALSO
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=jose-jwk-gen&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>
