kilabit.info
| AmA | Build | Email | GitHub | Mastodon | Projects | SourceHut

gotp v0.6.1 (2025-02-03)

This releases mostly contains chores that update the dependencies and tooling.

We have replace all linters from third party and external program to use internal command and "go vet" only. This should simplify setting up development.

The CHANGELOG has been moved to the root of repository. This is to allow people to see the CHANGELOG directly without going to subdirectory first.

The "gotp version" now set from output of "git describe" and set using "-ldflags" during build option. The output also changes from "go v<SEMVER>" to "go version <SEMVER>".

gotp v0.6.0 (2024-06-22)

New features

all: implement command "export"

The "export" command export all issuers to file or standard output,

$ gotp export <FORMAT> [FILE]

List of known supported FORMAT is: uri. If FILE is not defined it will print to standard output. The list of exported issuers are printed in order of its label.

Bug fix

Fix "gen" command due to lower case secret

Sometimes, provider provide base32 of secret in lowercase. But, to decode it, all of the characters must be in upper case otherwise it will be failed.

gotp v0.5.0 (2024-02-08)

Breaking changes

all: make the path to private key static

Instead of prompting user, make the private key static, located at "$XDG_CONFIG_DIR/gotp/gotp.key". If the key exist, the issuer will be encrypted.

Enhancements

all: ask for passphrase when removing or renaming label

Even though "rename" command does not read the encrypted secret, as long as the private key is in use, it should ask for passphrase.

The remove operation allow only the one that know the private key can modify the issuer.

_sys: fix the bash completion installation directory

In POSIX system, the correct installation for bash completion script should be /usr/share/bash-completion not under /etc directory.

gotp v0.4.0 (2023-11-11)

New features

all: implement command "get"

The "get" command get and print the issuer by its LABEL. This will print the issuer secret, unencrypted.

Enhancements

all: unfold private key path before reading

By unfolding, user can set the path to private key using "~" that points to their home. This make the key can works across home directory, in case user have multiple homes (Linux and macOS have different home path and maybe user name, but both can use "~" as substitution for $HOME)

Makefile: add task to install and uninstall gotp in macOS

gotp v0.3.1 (2023-05-25)

Bug fix

all: load private key only when needed

In case the configuration use private key with passphrase, the bash completion will hang due to the command ask for passphrase.

This changes fix this issue by loading private key only when doing add, generate, import, or remote-private-key.

gotp v0.3.0 (2023-05-17)

New features

all: add command to remove the private key

The remove-private-key decrypt the issuer’s value back using previous private key and store it back to file as plain text.

all: add command to set private key

The set-private-key command encrypt the issuer’s value (hash:secret…​) in the file using private key. The supported private key is RSA.

Chores

all: update Go version to 1.19 and all dependencies

gotp v0.2.3 (2023-02-12)

Enhancements

all: add bash completion script

Chores

all: move the installation steps in AUR to Makefile
make: change the build and install directory

The build task now create binary under _sys/usr/bin/, while the install task install the binary based on $DESTDIR environment variable, not $GOBIN.

gotp v0.2.2 (2022-09-06)

Bug fix

all: fix the go:embed reference to symbolic link

Due to previous commit, where we rename the README.adoc to README, and change it to symbolic link, the build then failed when doing go:embed.

Chores

all: add task to serve and preview the documentation at _doc
all: group all documents into directory _doc

gotp v0.2.1 (2022-08-07)

Bug fixes

all: fix base32 decoding on secret

The base32 decoding should be without padding otherwise it will return an error (for some base32 string):

illegal base32 data at input byte XX

Chores

_AUR: add package build for Arch Linux

This package build the gotp based on the latest tag and commit.

go.mod: set minimum Go version to 1.18 and update all modules

The 1.17 has been deprecated since the release of 1.19.

This update affect the test cases on Cli.

gotp v0.2.0 (2022-03-14)

Release gotp under GPL 3.0 or later.

See https://kilabit.info/journal/2022/gpl/ for more information.

gotp v0.1.0 (2022-02-08)

The first release of gotp, a command line interface to manage and generate Time-based One Time Password (TOTP).

Features,

  • Add a TOTP secret identified by unique LABEL.

  • Generate N number passwords using the secret identified by LABEL.

  • Import the TOTP configuration from other provider. Currently, the only supported PROVIDER is Aegis and the supported file is .txt.

  • List all labels stored in the configuration.

  • Remove LABEL from configuration.

  • Rename a LABEL into NEW-LABEL.

  • Encrypted secret using RSA based private key.