tnt2

command module
v1.6.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 16, 2024 License: Apache-2.0 Imports: 1 Imported by: 0

README

NAME

tnt2 - a program the encrypts/decrypts files using an infinite (with respect to the plaintext) key.

Usage:

tnt2 [command]

Available Commands:
  completion  generate the autocompletion script for the specified shell
  decrypt     decrypt a TNT2 encrypted file.  
  encrypt     encrypt plaintext using TNT2  
  help        Help about any command
  version     Display version information
Flags:
      --config string         config file (default is $HOME/.tnt2.yaml)\n      
  -h, --help                  help for tnt2
  -i, --inputFile string      Name of the plaintext file to encrypt/decrypt. (default "-")
  -o, --outputFile string     Name of the file containing
  -f, --proformaFile string   Name of file containing the proforma machine to use.
  -v, --version               version for tnt2

Use "tnt2 [command] --help" for more information about a command.

DESCRIPTION

tnt2 is an encryption/decryption system that uses an infinite (with respect to the plaintext) key to encrypt the data. It is based on and expands the tnt encryption system. The differences are:

  1. The rotor sizes are up to 8192 bits instead of up to 2048 bits in tnt
  2. You can specify up to 40 rotors and 24 permutators. tnt is limited to 6 rotors and 1 permutator (applied twice).
  3. tnt2 by default, compresses the input file before encryption. tnt does not compress the input file.
  4. tnt2 supports outputting the encrypted file as binary data, ASCII85 encoded data, or PEM encoded data. tnt only outputs binary data.
  5. tnt2 allows changing the proforma rotors and permutators by reading in new proforma rotors from a file.

The pseudo-random generator used by tnt2 can encrypt approximately 8.165396×1065 bytes up to 8.676587×10371, depending on the number of rotors and permutators, before the generated key will repeat itself.

COMMANDS

encrypt

Encrypt plaintext using the TNT2 Infinite (with respect to the plaintext) Key Encryption System.

Usage:

tnt2 encrypt [flags]

Flags:
  -c, --compress       compress input file using flate  
  -n, --count string   initial block count (default "-1")

The count can be given as a fraction of the maximum number of blocks that can be generated by the encryption engine. Using "SecretKey" as the key and "1/2" as the block count, there are 2.551686×1064 32 byte blocks that can be generated using the default 6 rotors and 2 permutators, resulting in a starting block count of 1.275843×1064.

  -h, --help           help for encrypt  
  -a, --useASCII85     use ASCII85 encoding  
  -p, --usePem         use PEM encoding.
  -w, --overWriteFile  overwrite an existing output file.
Global Flags:
      --config string        config file (default is $HOME/.tnt2.yaml)
  -i, --inputFile string     Name of the plaintext file to encrypt/decrypt. (default "-")
  -o, --outputFile string    Name of the file containing the encrypted/decrypted plaintext.
  -f, --proformaFile string  the file name containing the proforma machine to use.
decrypt

decrypt a file encrypted by the TNT2 Infinite (with respect to the plaintext) Key Encryption System.

Usage:

tnt2 decrypt [flags]

Flags:
  -h, --help           help for decrypt
  -w, --overWriteFile  overwrite an existing output file.
Global Flags:
      --config string         config file (default is $HOME/.tnt2.yaml)
  -i, --inputFile string      Name of the plaintext file to encrypt/decrypt. (default "-")
  -o, --outputFile string     Name of the file containing the encrypted/decrypted plaintext.
  -f, --proformaFile string   the file name containing the proforma machine to use.
version

Display version and detailed build information for tnt2.

Usage:

tnt2 version [flags]

Flags:
  -h, --help   help for version

Secret Key

The secret key that is used to encrypt/decrypt the data can be supplied in one (1) of three (3) ways, in order of security:

  1. The program will prompt for the secret key (most secure)
  2. The secret key is passed in via the tnt2Secret environment variable.
  3. The secret key is passwd as arguments after all the valid options (least secure)

Copyright © 2021 Billy G. Allie

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Documentation

Overview

tnt document

Copyright © 2021 Billy G. Allie <bill.allie@defiant.mug.org>

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL