|
| 1 | +Notes should be easy to use and secure. We can manually encrypt a |
| 2 | +notefile quite easily with GnuPG and that is fine for a few files. But |
| 3 | +eventually we all collect many note files. Some notes are related to |
| 4 | +others and we decide to reorganize them by placing them in directories. |
| 5 | +To keep things simple we have a relatively flat heirachy of directories |
| 6 | +with the main notes directory (~/.notes) only having a single layer of |
| 7 | +directories beneath it, each corresponding to a notebook (You wouldn't |
| 8 | +have a notebook inside a notebook would you?). |
| 9 | + |
| 10 | +Then we decide we need to keep them secure, particularly if we use |
| 11 | +network backups. So wee look into encryption and find many options with |
| 12 | +some being more secure than others. We probably choose the popular GnuPG |
| 13 | +to encrypt the files as there are many sources for help and |
| 14 | +documentation. Our encrypted notes build and we seem to have a lot. |
| 15 | + |
| 16 | +Then we find out that our GPG private key is nearly expired. Remind me |
| 17 | +why didn't I use the .gpg endign on my encrypted files? How many |
| 18 | +encrypted files do I need to decrypt and then encrypt again with my new |
| 19 | +key? |
| 20 | + |
| 21 | +This is the scenario for which I wrote Notes. It consists of two |
| 22 | +commands: one to manage notebooks and one to manage notes. |
| 23 | + |
| 24 | +Notes handles all the encryption relatively transparently to the user. |
| 25 | +It can repace the encryption key easily on all of your encypted notes by |
| 26 | +just entering a one line command. It supports resident GPG keys for |
| 27 | +Yubikeys and PIV cards [We recommend that for resident Yubikeys you |
| 28 | +enable pin support and disable touch for the encryption key as the |
| 29 | +button touch cannot be temporarily cached unlike the pin #. This will |
| 30 | +save you having to touch the Yubikey for each enryption]. |
| 31 | + |
| 32 | +Keeping your notes inside Notes shouldn't be restrictive or |
| 33 | +obscure/proprietary. Each note is simply a text file created with your |
| 34 | +default text editor and then encrypted with GPG. This means that you can |
| 35 | +use standad Unix shell commands to manage these notes if you need to for |
| 36 | +file management, backups and even decryption. But to make it easier we |
| 37 | +provide two commands. The 'notes' command handles everything to do with |
| 38 | +notes and the 'notebook' command everything to do with notebooks. |
| 39 | + |
| 40 | +Notes handles any unsecure files by shredding the file before deletion |
| 41 | +ensuring that the unencrypted file is not accessible. You can even view |
| 42 | +the note without creating an unencrypted version. |
| 43 | + |
| 44 | +The two commands are but a single small shell script that identifies |
| 45 | +what you are trying to do by which command you call it by. |
| 46 | + |
| 47 | +With version 1.0 we have yet to implement git functionality. But for now |
| 48 | +you could just run git inside the ~/.notes directory for managing via |
| 49 | +git. We hope to add more functionality in future releases and welcome |
| 50 | +contributions. |
| 51 | + |
0 commit comments