This repository contains a tool to communicate with the Parsec service on the command-line.
To compile and list the available commands:
$ cargo build
$ cargo run
Ping the service:
$ cargo run -- ping
For demos and to test the Parsec service, you might want to change the Parsec endpoint location. For
that, set the PARSEC_SERVICE_ENDPOINT
environment variable to correction endpoint.
To set a Unix Domain Socket Listener endpoint at /tmp/parsec.sock
:
$ export PARSEC_SERVICE_ENDPOINT=unix:/tmp/parsec.sock
You can set the RUST_LOG
environment variable to modify the logging outpout. See the
documentation for more information.
Unless specified otherwise below, the data format expected by the commands is the same as describe
in the Parsec
Book. The
--help
option of commands might give more information about the expected format.
- ECDSA signatures are formatted using the ASN.1 representation
Ecdsa-Sig-Value
described in RFC 3279. - Plaintext data is expected/shown as a UTF-8 string (input data of
sign
, output data ofdecrypt
). - Ciphertext data is expected/shown as base 64 (output data of
sign
, input data ofdecrypt
). - Exported public keys are formatted in PEM. RSA keys are encoded in
RSAPublicKey
ASN.1 format. EC keys are encoded in the uncompressed format described in SEC 1: Elliptic Curve Cryptography §2.3.3.
To be able to authenticate with the JWT-SVID
authenticator,
compile this crate with the spiffe-auth
feature.
The software is provided under Apache-2.0. Contributions to this project are accepted under the same license.
Please check the Contribution Guidelines to know more about the contribution process.
Copyright 2020 Contributors to the Parsec project.