encryption-tool / plugin for notepad++ (https://notepad-plus-plus.org).
features: encryption/decryption with symmetric ciphers like aes. hash-functions like sha3. generation of random values (i.e. for passwords), various encoding options.
- x64:: download (md5: 4D10E802AD6CA28E204FD71FDDAE9068)
- x86:: download (md5: 94886345841AE634B57552D1320103E6)
- Linux version: see FAQ: compiling nppcrypt
- 220.127.116.11: x86 (md5: 2D5D894EBA15A653FADD1776B66417BB), x64 (md5: B2BD52509310A324E0A8090DFC8CCB70)
- 18.104.22.168: x86 (md5: 038E4EF7D01858A3ED32F49ACAAADAC5), x64 (md5: 0CE1EE405A930D083F74CB085667E73F)
- 22.214.171.124: x86 (md5: 0191B7DA5389CE95D637705F13154ED6), x64 (md5: B4F6C5BF060E9F5491EF5E7DF37D8D55)
- 126.96.36.199: x86 (md5: 08255E55BB4F5FD4ACED2E5849F0FAFA)
- 188.8.131.52: x86 (md5: B1260E531C39DD1E342D2CE5D85095C2)
kontakt (at) cerberus-design . de
this software uses:
-  crypto++ version 8.0, part of this project under crypto++ ( base32 & base64 files modified )
-  tinyxml2 version 2.1.0, part of this project under tinyxml2
-  bcrypt version 1.3, part of this project under bcrypt
-  scrypt version 1.2.1, part of this project under scrypt
-  cli11 part of this project under cli11
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
- more ciphers & hashes (thanks to cryptopp 8.0)
- easy mode (with default encryption), see faq
- interface improvements (more information etc)
- user may provide base16/32/64 encoded input
- user may specify custom IV
- base32/64 encoding alphabets can be modified, see faq
- lots of internal improvements & fixes
- cryptopp 6.0 & lots of new ciphers
- interface overhault with more options
- added ChaCha cipher & BLAKE2 hashes (cryptopp >v.5.6.3 needed)
- interface improvements
- major bcrypt bug fixed.
- several dialogs (random/covert/hash) are now non-modal and dockable
- added copy to clipboard buttons
- What is this strange xml-stuff above my encrypted data all about?
- What is a nppcrypt-file?
- What are good options for strong encryption?
- This version fails to decrypt stuff i encrypted with an older version!
- nppcrypt shows me most of what went into the encryption (header), but is there other stuff i might want to know?
- compiling nppcrypt
- the commandline tool
- text encodings
- easy mode
- base32/base64 alphabets
Well, first of all it would be quite hard to remember all the different options that were used for different encryptions. Secondly a lot of encryptions need additional data (IV, Salt, tag). Select this header together with your encrypted data and all this stuff will be parsed automaticly. Of course you can just delete the header and only select the encrypted data for decryption. But in this case you have to select all the right options yourself and provide the missing data (i.e. iv).
In the preferences-dialog you can specify a nppcrypt-file-extension (like mp3 doc etc.). If you futhermore check the "enable" box nppcrypt will now monitor all files you open and save with notepad++. for example: you specified the nppcrypt-file-extension "nbak" and now you save a file as "secret.nbak": the encryption dialog will automaticly open and you can choose the encryption-method of your liking. the next time you open this file you will be automaticly asked for your password. #IMPORTANT#: nppcrypt does NOT monitor the auto-backup-feature of notepad++. also: "save as" does not work for nppcrypt-files!
for example: aes/rijndael 256, gcm , 16-byte salt, scrypt (at least N=14, r=8, p=1, or better, see google), random iv
Sadly 184.108.40.206 is not backward compatible (mostly because of a changed header format). Obviously this is quite annoying and will be avoided in the future, but in this case it seemed worth it. Please download an older version (links above), replace nppcrypt.dll in Notepad++\plugins (< Notepad++ 7.6) or %PROGRAMDATA%\Notepad++\plugins\nppcrypt (>= Notepad++ 7.6.1), decrypt your data, then update to 220.127.116.11 and reencrypt. Sorry for the inconvenience...
5. nppcrypt shows me most of what went into the encryption (header), but is there other stuff i might want to know?
- bcrypt output is always 23 bytes long ( wikipedia ). therefore it is hashed by keccak-shake128 to get the needed key-length.
- some cipher modes provide authentication (gcm/ccm/eax). In advanced mode you will have the possibility to add IV and Salt as additional authenticated data. Just click the checkbox "auth. IV/Salt".
- nppcrypt can add an additional hmac value to authenticate the data (see auth-tab in encryption-dialog). for this purpose everything beween and in the header and the encrypted data is hashed.
Download repository, open nppcrypt.sln under projects/msvc2017 and compile the project "nppcrypt" or the project "cmdline" (Microsoft Visual Studio 2017 needed)
git clone https://github.com/jeanpaulrichter/nppcrypt.git cd nppcrypt make sudo make install (OR: sudo make install target=global to copy nppcrypt to /usr/bin instead of /usr/local/bin) make clean
basic usage: nppcrypt [enc|dec|hash] input. see --help for information about options. Some options allow for additonal information to be passed via the seperator ":". i.e. "-k scrypt:16:9:2" means scrypt with (N=2^16,r=9,p=2) instead of the default values (N=14,r=8,p=1) you would get with "-k scrypt". examples:
decrypt .nppcrypt file:
nppcrypt dec test.nppcrypt
encrypt file "test.txt" with default settings and save as test.nppcrypt:
nppcrypt enc test.txt -o test.nppcrypt
get md5, sha1 and sha3 hash of file "download.zip" (and optionally check hex-string against it):
get blake2s hash of "teststring"
nppcrypt hash blake2s teststring
the notepad++ plugin will work with utf16/ucs-2 files, but if you want to use nppcrypt it is recommended that you only use utf8 files. the commandline tool writes only utf8 files and can cannot read utf16-encoded nppcrypt-files.
18.104.22.168 introduces "easy mode" for new users that only asks for a password and hides all other options. In this mode a set of default options will be used for encryption. You can change the default encryption by editing the preferences file %APPDATA%/notepad++/plugins/config/nppcrypt.xml. look for <default_encryption>.
For everything except the "convert" dialog nppcrypt uses RFC 4648 base64 and DUDE base32. The "convert"-dialog (Nppcrypt->Convert) by default uses RFC 4648 for both base64 and base32. You can change the alphabets used by the convert-dialog in the preferences file: %APPDATA%/notepad++/plugins/config/nppcrypt.xml.