/obsidian-encrypt

Hide secrets in your Obsidian.md vault

Primary LanguageTypeScriptMIT LicenseMIT

Obsidian Encrypt Plugin

Create encrypted notes within your Obsidian.md vault.

Encrypted notes are never decrypted to disk (unless you use the decrypt in-place feature) giving you peice-of-mind that the decrypted contents havn't been sync'd or backed up to external systems.

⚠️ WARNING - Use at your own risk ⚠️

  • Your passwords are never stored anywhere, if you forget your passwords you can't decrypt your notes.
  • No known audits have been undertaken for the soundness of encryption methods being used. Unwanted decryption by a 3rd party may be possible if they have access to your files.
  • Bugs could be introduced to the software at anytime, you are responsible for having backups of your notes.

⚜️ Installation

You can install the plugin via the Community Plugins tab within Obsidian by searching for "Meld Encrypt"


⚜️ Latest Changes

Please report any bugs or feature requests here.

v2.0.4

  • fix password remembered even when 'remember password' setting is unchecked

v2.0.3

  • add common password session cache
  • also remember passwords for whole note encryption
  • add password peek button

v2.0.2

Due to popular demand, the encrypt in-place functionality is no longer scheduled for removal 🙄🥳.

Changes

  • Code refactors
  • UI clean up
  • Update usage docs

⚜️ Usage

Standalone, always encrypted, notes (.encrypted files)

To create a new encrypted note

  1. Select 'Create encrypted note' from the command palette.
  2. Enter and confirm a password and optional hint to use.
  3. Edit your encrypted note (it's contents will be encrypted and saved to disk).

To edit/view an encrypted note

  1. Open the note as usual from the navigation tree.
  2. Enter the password for the note.

To changing an encrypted notes password and hint

  1. Open the note as usual from the navigation tree.
  2. Enter the password for the note.
  3. Click 'Change Password' from the tab title bar or tab context menu.
  4. Enter the new password and hint.

In-place Encryption

To encrypt selected text

  1. Select some text to encrypt

Note: A partial selection will be expanded to include the whole line if the 'Expand selection to whole line' setting is enabled.

  1. Run the Encrypt/Decrypt command from the palette (or bind a keyboard shortcut to it).

Run the Encrypt/Decrypt command

  1. Enter and confirm a password and optional hint.

  2. Your selected text should now be encrypted.

Your selected lines are now encrypted

How to reveal your encrypted text

  1. Place your cursor anywhere on encrypted text.

Place your cursor on the encrypted line

  1. Run the Encrypt/Decrypt command from the palette.

Run the Encrypt/Decrypt command

Note: If you choose 'Encrypt/Decrypt In-place' your text will be decrypted directly into the editor without showing the dialog in step 4 below (any syncing or backup software could then pick this up).

  1. Enter the correct password.

Note: Your previously used password is filled in by default (You can change this in the plugin settings).

  1. Your decrypted text is revealed in a dialog window.

Your decrypted text is revealed

Note: Click 'Decrypt In-place' to replace the encrypted text in the editor.


⚜️ Settings

Common Settings
⚙️ Confirm password Confirm password when encrypting
⚙️ Remember password Remember the last used password for this session.
⚙️ Remember Password Timeout The number of minutes to remember the last used password.
Whole note encryption Settings
⚙️ Add ribbon icon to create note Adds a ribbon icon to the left bar to create an encrypted note.
In-place encryption Settings
⚙️ Expand selection to whole line Partial selections will get expanded to the whole line
⚙️ Copy button Show a button to copy decrypted text.

⚜️ Do you find this plugin useful?

Support further development of the plugin by...

Thank you for your support 😊


⚜️ Previous changes

v2.0.1

Bug fixes

  • fix large files can't be encrypted (#41)
  • add 'Change Password' and 'Lock' actions to note tab context menu (#49)

v2.0.0

To make encrypted notes more resilient, starting from v2.0.0, the plugin introduces a new .encrypted note.

The advantages of this new approach are:

  • Your note contents are always encrypted on disk.
  • Encrypted bytes are hidden away from the user making it difficult to accidentally corrupt the encryption and thus making the note un-decryptable.
  • Encrypted notes are easily identifiable by their '.encrypted' file extension.
  • Better workflow for editing encrypted notes.

⚠️ It is recommended that you change all previously inline encrypted text into the new encrypted note format.

...