One-time password client.
UPDATE: this has been superceded by the tools in cryptutils.
I hate having my phone on my person, so wrote a command line client for [HT]OTP-based two-factor auth. This only works with RFC 4226 HOTP / 6238 TOTP two-factor; support is planned for Yubikey HOTP (and possibly the Yubikey OTP). If you're using Authy, you're on your own.
The account store can be imported from PEM or exported to PEM. Pass either "-export" or "-import", and provide the source (when importing) or destination (when exporting) file as the only argument. If "-" is used as a filename, otpc will use either standard input or standard output, as appropriate.
The accounts are stored internally using a Go map; when dumped to disk, it is first encoded to JSON, then encrypted using NaCl's secretbox. The key for NaCl is derived using Scrypt (N=32768, r=8, p=4) with a 32-byte salt that is randomly generated each time the file is saved. The salt is stored as the first 32 bytes of the file.
otpc is released under the ISC license.