fish
A simple command-line utility written in Go that supports
both Blowfish
and Twofish.
fish
supports reading the encryption key securely from a prompt or passed
via the -k
option. You may use other UNIX tools such as base64
to encode
the resulting cipher text for portability.
Table of Contents
Created by gh-md-toc
Getting Started
Install from Releases
You can install fish
by simply downloading the latest version from the
Release page for your platform
and placing the binary in your $PATH
.
For convenience you can run one of the following shell pipelines which will download and
install the latest release binary into /usr/local/bin
(modify to suit):
For Linux x86_64:
curl -s https://api.github.com/repos/prologic/fish/releases/latest | grep browser_download_url | grep Linux_x86_64 | cut -d '"' -f 4 | wget -q -O - -i - | tar -xv fish && mv fish /usr/local/bin/fish
For MacOS x86_64:
curl -s https://api.github.com/repos/prologic/fish/releases/latest | grep browser_download_url | grep Darwin_x86_64 | cut -d '"' -f 4 | wget -q -O - -i - | tar -xv fish && mv fish /usr/local/bin/fish
For Windows, there are published binaries as well. Download and place in your
environment as appropriate.
Install from Homebrew
On MacOS you can install fish
using Homebrew:
brew tap prologic/fish
brew install fish
Install from Source
To install fish
from source you can run go get
directly if you have a Go environment setup:
go get git.mills.io/prologic/fish
NOTE: Be sure to have $GOBIN
(if not empty) or your $GOPATH/bin
in your $PATH
.
See Compile and install packages and dependencies
Or grab the source code and build:
git clone https://git.mills.io/prologic/fish.git
cd fish
make build
And optionally run make install
to place the binary fish
in your $GOBIN
or $GOPATH/bin
(again see note above).
Usage
Encryption:
$ echo 'Hell World' | ./fish -e -k "$(pwgen 16 1)" - | base64
AAAAAAAAAAC40+fOWO4DOCu8cfLIXKMV
Decryption:
$ echo "AAAAAAAAAAAnQWrQ/Dw26TjqTfxqve87" | base64 -d | ./fish -d -k "${key}" -
Hell World
Add the -2
option to use Twofish instead of Blowfish (//the default//).
License
fish
is licensed under the terms of the MIT License