Readme
This repository contains a tool to communicate with the Parsec
service on the command-line.
Getting started
To compile and list the available commands:
$ cargo build
$ cargo run
Ping the service:
$ cargo run -- ping
Modifying Parsec service endpoint
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
Modifying logging output
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 of
decrypt ).
Ciphertext data is expected/shown as base 64 (output data of sign , input data of decrypt ).
Exported public keys are encoded in PEM. By default PKCS#8 format
is used for RSA RFC 3279
and ECC RFC 5480
public keys. With --pkcs1 parameter RSA keys exported in PKCS#1 format
RFC 2313 .
SPIFFE based authenticator
To be able to authenticate with the JWT-SVID
authenticator ,
compile this crate with the spiffe-auth feature.
Demo
tests/parsec-cli-tests.sh can be used for end to end Parsec tests using parsec-tool.
License
The software is provided under Apache-2.0. Contributions to this project are accepted under the same
license.
Contributing
Please check the Contribution
Guidelines to know more
about the contribution process.
Copyright 2020 Contributors to the Parsec project.