# Tools

## Tasks

### Twofat to Aegis
* Export data from `twofat` to URIs: `twofat export twofat.url`
* Convert otpauth-URI file to Encrypted Aegis JSON file with aegisvault

Or:
* Export data from `twofat` to URIs: `twofat export twofat.url`
* Import URI file into optclient[-cli], export to encrypted Aegis:
```
#cp otpclient.empty.enc otpclient.enc  # Not needed for latest optclient-cli 
otpclient-cli --import -t freeotpplus_plain -f twofat.uri -d twofat.otpclient
otpclient-cli --export -t aegis_encrypted -d twofat.otpclient -o .

Or:
* Export data from `twofat` to URIs: `twofat export twofat.url`
* Import URIs directly into Aegis (format: Plan Text) [unsafer]

Or:
* Export data from `twofat` to URIs: `twofat export twofat.url`
* Convert URIs to JSON with `otpauth2json`: `otpauth2json twofat.url >twofat.json`
* Convert JSON to Encrypted Aegis JSON: Import into Aegis, save as encrypted Aegis json

### Aegis to KeePassXC
* Convert Encrypted Aegis JSON to KeePassXC (4.0) KDBX: atk
  - https://github.com/graynk/atk
* Read KDBX4: https://github.com/sseemayer/keepass-rs (kp-dump-json)
* Read KDBX3: https://github.com/makovich/kp
* Read kdbx3.1 (KeePassX/kdbxviewer): https://github.com/sru-systems/rust-kpdb
* Read kdbx various versions: https://github.com/sseemayer/keepass-rs
