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.