DcryptDll plug-in: Difference between revisions

From NSIS Wiki
Jump to navigationJump to search
m (Updated author links.)
(Link to the unicode version)
 
(19 intermediate revisions by 9 users not shown)
Line 1: Line 1:
{|align=right
{{PageAuthor|Arrby}}
|<small>Author: [[{{ns:2}}:Arrby|Arrby]] ([[{{ns:3}}:Arrby|talk]], [[{{ns:-1}}:Contributions/Arrby|contrib]])</small>
 
|}
<br style="clear:both;">
== Links ==
== Links ==
Download link:


<attach>DcryptDll.zip</attach>
<attach>DcryptDll.zip</attach>


== Description ==
https://github.com/swallowdir/nsis-dcrypt/releases/download/v1.0/DcryptDll.zip (Unicode version)


The .zip file above includes a Plugin for NSIS (DcryptDll.dll) and two executable
The .zip file above includes a Plugin for NSIS (DcryptDll.dll) and two executable
binaries (Ncrypt.exe & GenKeys.exe), the source to build all 3, two example
binaries (Ncrypt.exe & GenKeys.exe), the source to build all 3, two example
.nsi scripts showing possible usage, the how to use document DcryptDllReadme.html,
.nsi scripts showing possible usage, the how to use document DcryptDllReadme.html,
and a couple of other supporting files.<br>
and a couple of other supporting files.


These add some encryption / decryption capability to NSIS.<br>
== Description ==
 
These add encryption / decryption capability to NSIS using the [[Wikipedia:RC4|RC4]] algorithm but it can also hash the string with the [[Wikipedia:MD5|MD5]] algorithm.


In a manner similar to the ExtractDllEx plugin, one program is used on the computer
In a manner similar to the ExtractDllEx plugin, one program is used on the computer
Line 33: Line 35:


Please let me know if you find any of those "dreaded" bugs.
Please let me know if you find any of those "dreaded" bugs.
== FAQ ==
==== Does DcryptDll support solid compression? ====
* Since DCryptDll only handles encryption, you can make it support whatever type of compression you need. A common technique is to use [http://www.7-zip.org 7-zip] or another freely redistributable command-line archiving tool to compress all of the files that you need encrypted, and then write a batch script that encrypts the archive at compile time, using temporary files and !define to pass information between the compiler/preprocessor and the encryption tools. NCrypt.exe and NGenKeys.exe are your friends.
[[Category:Plugins]]

Latest revision as of 12:39, 10 January 2015

Author: Arrby (talk, contrib)


Links

Download link:

DcryptDll.zip (172 KB)

https://github.com/swallowdir/nsis-dcrypt/releases/download/v1.0/DcryptDll.zip (Unicode version)

The .zip file above includes a Plugin for NSIS (DcryptDll.dll) and two executable binaries (Ncrypt.exe & GenKeys.exe), the source to build all 3, two example .nsi scripts showing possible usage, the how to use document DcryptDllReadme.html, and a couple of other supporting files.

Description

These add encryption / decryption capability to NSIS using the RC4 algorithm but it can also hash the string with the MD5 algorithm.

In a manner similar to the ExtractDllEx plugin, one program is used on the computer you are compiling your NSIS script on to do the encryption, and the plugin is used to do the decryption when the Installer .exe is actually executing.

Ncrypt.exe is the program you use for the encryption, DcryptDll.dll is the plugin used to do the decryption.

The NGenKeys.exe is not necessary, but is included for convenience: you can use it to generate the KeyStrings you will need for encrypting and decrypting the files.

The zip file was built so that you can just extract it (preserving folder names) to your NSIS distribution Contrib folder. You should either move the plugin to the Plugins folder or recompile the source (the VC++ 6.0 project file has output set to the Plugins directory).
You can move Ncrypt.exe and NGenKeys.exe to some folder included in your PATH environment variable or whatever.

Please let me know if you find any of those "dreaded" bugs.

FAQ

Does DcryptDll support solid compression?

  • Since DCryptDll only handles encryption, you can make it support whatever type of compression you need. A common technique is to use 7-zip or another freely redistributable command-line archiving tool to compress all of the files that you need encrypted, and then write a batch script that encrypts the archive at compile time, using temporary files and !define to pass information between the compiler/preprocessor and the encryption tools. NCrypt.exe and NGenKeys.exe are your friends.