Skip to content

sebastianas/parsec-tool

 
 

Repository files navigation

Parsec Tool

Crates.io Code documentation

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.

Data format

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

asciicast

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.

About

The Parsec Command Line Interface

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 80.3%
  • Shell 19.7%