Subcommands
This reference describes the syntax of the Tessera command line interface (CLI) subcommands.
To start a Tessera node using subcommands, run:
tessera [OPTIONS] [SUBCOMMAND] [SUBCOMMAND OPTIONS]
keygen
Use the keygen subcommand to generate one or more key pairs to store in files or a supported key vault.
argonconfig, keygenconfig
- Syntax
- Example
tessera keygen --argonconfig <FILE>
tessera keygen --argonconfig /home/me/node1/argonoptions.json
JSON file containing settings to override the default Argon2 configuration.
Legacy syntax for this option is -keygenconfig <FILE>.
configfile, config-file
- Syntax
- Example
tessera keygen --configfile <FILE>
tessera keygen --configfile /home/me/me_node/tessera.conf
Path to the node configuration file.
Provide this option when updating a configuration file with new keys. If configout and pwdout are not provided, the updated configuration file prints to the terminal.
configout
- Syntax
- Example
tessera keygen --configout <FILE>
tessera keygen --configfile /home/me/me_node/tessera.conf --configout /home/me/me_node/update/tessera.conf
Path to save the updated configuration file to. To use this option, you must supply the --configfile option.
Legacy syntax for this option is -output <FILE>.
debug
tessera keygen --debug
Prints full exception stack traces to stdout.
encryptor.ellipticCurve
- Syntax
- Example
tessera keygen --encryptor.ellipticCurve <STRING>
tessera keygen --encryptor.ellipticCurve secp384r1
Elliptic curve to use for key generation. Defaults to secp256r1.
encryptor.nonceLength
- Syntax
- Example
tessera keygen --encryptor.nonceLength <INTEGER>
tessera keygen --encryptor.nonceLength 38
Nonce length to use as the initialization vector (IV) for symmetric encryption. Defaults to 24.
encryptor.sharedKeyLength
- Syntax
- Example
tessera keygen --encryptor.sharedKeyLength <INTEGER>
tessera keygen --encryptor.sharedKeyLength 48
Key length to use for symmetric encryption when generating keys. Defaults to 32.
encryptor.symmetricCipher
- Syntax
- Example
tessera keygen --encryptor.symmetricCipher <STRING>
tessera keygen --encryptor.symmetricCipher AES/CTR/NoPadding
Symmetric cipher to use for encrypting data. Defaults to AES/GCM/NoPadding.
encryptor.type
- Syntax
- Example
tessera keygen --encryptor.type <STRING>
tessera keygen --encryptor.type EC
Encryption type. Possible values are EC, NACL, and CUSTOM. Defaults to NACL
keyout, filename
- Syntax
- Example
tessera keygen --keyout <FILE>[,<FILE>...]
tessera keygen --keyout /Users/me/keys/nodeKey1,/Users/me/keys/nodeKey2
Comma-separated list of key files to generate. The number of arguments determines the number of key pairs to generate. Defaults to null.
Legacy syntax for this option is -filename <FILE>[,<FILE>...].
pwdout
- Syntax
- Example
tessera keygen --pwdout <FILE>
tessera keygen --pwdout /home/me/me_node/passwordFile
Path to save updated password list to. To use this option, you must supply the --configout and --configfile options.
vault.hashicorp.approlepath
- Syntax
- Example
tessera keygen --vault.hashicorp.approlepath <PATH>
tessera keygen --vault.hashicorp.approlepath auth/approle/login
AppRole path for HashiCorp Vault authentication. Defaults to approle.
Legacy syntax for this option is -keygenvaultapprole <PATH>.
vault.hashicorp.secretenginepath
- Syntax
- Example
tessera keygen --vault.hashicorp.secretenginepath <PATH>
tessera keygen --vault.hashicorp.secretenginepath /engine/secret
Path to the v2 HashiCorp Vault secret engine.
Legacy syntax for this option is -keygenvaultsecretengine <PATH>.
vault.hashicorp.tlskeystore
- Syntax
- Example
tessera keygen --vault.hashicorp.tlskeystore <FILE>
tessera keygen --vault.hashicorp.tlskeystore /Users/me/auth/keystore.jks
Path to JKS keystore for TLS communication with HashiCorp Vault.
Legacy syntax for this option is -keygenvaultkeystore <FILE>.
vault.hashicorp.tlstruststore
- Syntax
- Example
tessera keygen --vault.hashicorp.tlstruststore <FILE>
tessera keygen --vault.hashicorp.tlstruststore /Users/me/auth/truststore.jks
Path to JKS truststore for TLS communication with HashiCorp Vault.
Legacy syntax for this option is -keygenvaulttruststore <FILE>.
vault.type
- Syntax
- Example
tessera keygen --vault.type <STRING>
tessera keygen --vault.type HASHICORP
Key vault provider in which to save the generated key.
If not specified, keys are encrypted and stored on the local filesystem. Valid options are AZURE, AWS, and HASHICORP.
Legacy syntax for this option is keygenvaulttype <STRING>.
vault.url
- Syntax
- Example
tessera keygen --vault.url <STRING>
tessera keygen --vault.url https://secretsmanager.us-west-2.amazonaws.com
Key vault base URL.
Legacy syntax for this option is -keygenvaulturl <STRING>.
keyupdate, -updatepassword
Update the password or encryption options for an already locked key, or apply a new password to an unlocked key.
Legacy syntax for this subcommand is -updatepassword [COMMAND OPTIONS].
configfile, config-file
- Syntax
- Example
tessera keyupdate --configfile <FILE>
tessera keyupdate --configfile /home/me/me_node/tessera.conf
Path to the node's configuration file.
debug
tessera keyupdate --debug
Prints full exception stack traces to stdout.
encryptor.ellipticCurve
- Syntax
- Example
tessera keyupdate --encryptor.ellipticCurve <STING>
tessera keyupdate --encryptor.ellipticCurve secp384r1
Elliptic curve to use for the updated keys. Defaults to secp256r1.
encryptor.nonceLength
- Syntax
- Example
tessera keyupdate --encryptor.nonceLength <INTEGER>
tessera keyupdate --encryptor.nonceLength 38
Nonce length to use as the initialization vector (IV) for symmetric encryption. Defaults to 24.
encryptor.sharedKeyLength
- Syntax
- Example
tessera keyupdate --encryptor.sharedKeyLength <INTEGER>
tessera keyupdate --encryptor.sharedKeyLength 48
Key length to use for symmetric encryption when updating keys. Defaults to 32.
encryptor.symmetricCipher
- Syntax
- Example
tessera keyupdate --encryptor.symmetricCipher <STRING>
tessera keyupdate --encryptor.symmetricCipher AES/CTR/NoPadding
Symmetric cipher to use for encrypting data. Defaults to AES/GCM/NoPadding.
encryptor.type
- Syntax
- Example
tessera keyupdate --encryptor.type <STRING>
tessera keyupdate --encryptor.type EC
Encryption type. Possible values are EC, NACL, and CUSTOM. Defaults to NACL.
keys.keyData.config.data.aopts.algorithm
- Syntax
- Example
tessera keyupdate --keys.keyData.config.data.aopts.algorithm <STRING>
tessera keyupdate --keys.keyData.config.data.aopts.algorithm id
Argon2 variant to use. Defaults to i.
Valid options are i, d, and id.
keys.keyData.config.data.aopts.iterations
- Syntax
- Example
tessera keyupdate --keys.keyData.config.data.aopts.iterations <INTEGER>
tessera keyupdate --keys.keyData.config.data.aopts.iterations 4
Number of Argon2 iterations to perform. Defaults to 10.
keys.keyData.config.data.aopts.memory
- Syntax
- Example
tessera keyupdate --keys.keyData.config.data.aopts.memory <INTEGER>
tessera keyupdate --keys.keyData.config.data.aopts.memory 1248480
Sets the Argon2 memory usage. Defaults to 1048576.
keys.keyData.config.data.aopts.parallelism
- Syntax
- Example
tessera keyupdate --keys.keyData.config.data.aopts.parallelism <INTEGER>
tessera keyupdate --keys.keyData.config.data.aopts.parallelism 6
Sets the number of parallel Argon2 threads. Defaults to 4.
keys.keyData.privateKeyPath
- Syntax
- Example
tessera keyupdate --keys.keyData.privateKeyPath <PATH>
tessera keyupdate --keys.keyData.privateKeyPath /Users/me/mynode/nodekey.key
Path to the private key file to update. This option is required.
keys.password
- Syntax
- Example
tessera keyupdate --keys.passwordFile <STRING>
tessera keyupdate --keys.passwordFile changeme
Password to unlock the private key specified using keys.keyData.privateKeyPath.
keys.passwordFile
- Syntax
- Example
tessera keyupdate --keys.passwordFile <FILE>
tessera keyupdate --keys.passwordFile /Users/me/mynode/passwordFile
File containing the password to unlock the private key specified using keys.keyData.privateKeyPath.
version
tessera version
Prints version information and exits.