# Password Store with OTP using SmartCard ## Installation ```bash # MacOS brew install pass brew install pass-otp # Linux sudo apt-get install pass sudo apt install pass-extension-otp # Password Store git clone git@github.com:a14m/.pass ~/.password-store ``` ### Usage ```bash pass Personal/reddit pass otp Personal/reddit ``` ## Mobile Setup [Install the pass app from the app store](https://mssun.github.io/passforios/) Configure the app settings as follow: + General + Remember PGP Key Passphrase (ON) + Remember Git Credential Passphrase (ON) + Show Folders (ON) + Hide OTP Fields (ON) + Password Repository + Git URL: `https://github.com/a14m/.pass.git` + Username: `a14m` + Authentication Method: password + Generate a token at [github tokens](https://github.com/settings/tokens) (with all `repo` permissions) + Paste the token into the mobile app ---- ## SmartCard Setup ### Install Tails + Download [tails](https://tails.net/install/index.en.html) + Format a USB + Unmount disk (on MacOS ex. `diskutil unmountDisk /dev/diskX`) + Create bootable image from iso `sudo dd if=/path/to/tails.img of=/dev/diskX bs=4M status=progress` + Boot the `tails` live image from a bootable USB ### Setup GPG SmartCard ```bash ``` ### Restore GPG on SmartCard ```bash # Restore GPG keys from backup zbarcam -1 --raw > key.asc # Import the GPG key on smartcard gpg --import key.asc gpg --edit-key --expert gpg> trust gpg> keytocard Really move the primary key? (y/N) y Please select where to store the key: (1) Signature key (2) Encryption key (3) Authentication key Your selection? 1 ... gpg> key 1 gpg> keytocard Please select where to store the key: (2) Encryption key (3) Authentication key Your selection? 2 ... gpg> key 1 gpg> key 2 gpg> keytocard Please select where to store the key: (3) Authentication key Your selection? 3 ... gpg> save gpg> quit Save changes? (y/N) y ```