Enigma Protector questions

Post here any topics that related to Enigma Protector, its functionality, your misunderstanding, offers to improvements etc etc etc
Post Reply
samsonite131
Posts: 30
Joined: Tue Oct 15, 2013 10:35 pm

Enigma Protector questions

Post by samsonite131 »

Hello,
I'm looking at Enigma Protector, and have some questions.

I assume both Enigma Protector and Enigma Protector 64 can protect 32-bit and 64-bit programs?
The only difference I see is that Enigma Protector 64 is written specifically to run on 64-bit OSes?

I intend to use the same source code files to compile my program for both 32-bit and 64-bit.
Is the protection process seamless when switching between the two?

I need a way send the user his registration key online. I assume I can upload keygen.dll to my
web server and use it to generate a registration key from the user's hardware ID?

I see that my program must be protected before it can generate a hardware ID. Hopefully, that
won't be a problem.

I have one concern about the Enigma Protector program. When I enter the "Registration name",
"Hardware ID", and "Registration key", and click the Generate button, it generates a key for me.
But, when I click the Generate button again, the key changes. Why am I always getting different keys
for the same name and HWID? Why isn't the key constant?

I see that the default test program, test32.exe, increased in size from 571kb to 1303kb after protection.
Is this size increase constant for all protected programs (~800kb added) or does it depend on the
size of the executable? E.g. Larger size increase for larger executables?

BTW, your KeyGen VC project does not compile under MSVC++ 6.0. Can you please fix it?

In keygenDlg.cpp, all these lines must be commented out:

Code: Select all

//#include <stdio.h>
//#include <commctrl.h>
//#include <windows.h>
//#include <strings.h>
Also, the address character & is giving errors and must be removed:

Code: Select all

	//ON_BN_CLICKED(IDC_BUTTONCLOSE, &CKeygenDlg::OnBnClickedButtonclose)
	//ON_BN_CLICKED(IDC_CHECKEXPIRATION, &CKeygenDlg::OnBnClickedCheckexpiration)
	//ON_BN_CLICKED(IDC_CHECKHD, &CKeygenDlg::OnBnClickedCheckhd)
	//ON_BN_CLICKED(IDC_CHECKREGAFTER, &CKeygenDlg::OnBnClickedCheckregafter)
	//ON_BN_CLICKED(IDC_CHECKREGBEFORE, &CKeygenDlg::OnBnClickedCheckregbefore)
	//ON_BN_CLICKED(IDC_CHECKCOUNTRY, &CKeygenDlg::OnBnClickedCheckcountry)
	//ON_BN_CLICKED(IDC_CHECKEXECS, &CKeygenDlg::OnBnClickedCheckexecs)
	//ON_BN_CLICKED(IDC_CHECKDAYS, &CKeygenDlg::OnBnClickedCheckdays)
	//ON_BN_CLICKED(IDC_CHECKRTIME, &CKeygenDlg::OnBnClickedCheckrtime)
	//ON_BN_CLICKED(IDC_CHECKGTIME, &CKeygenDlg::OnBnClickedCheckgtime)
	//ON_BN_CLICKED(IDC_BUTTONGEN, &CKeygenDlg::OnBnClickedButtongen)
	//ON_BN_CLICKED(IDC_BUTTONGENFP, &CKeygenDlg::OnBnClickedButtongenfp)
	//ON_BN_CLICKED(IDC_BUTTONVER, &CKeygenDlg::OnBnClickedButtonver)
	//ON_BN_CLICKED(IDC_BUTTONVERFP, &CKeygenDlg::OnBnClickedButtonverfp)

	ON_BN_CLICKED(IDC_BUTTONCLOSE, OnBnClickedButtonclose)
	ON_BN_CLICKED(IDC_CHECKEXPIRATION, OnBnClickedCheckexpiration)
	ON_BN_CLICKED(IDC_CHECKHD, OnBnClickedCheckhd)
	ON_BN_CLICKED(IDC_CHECKREGAFTER, OnBnClickedCheckregafter)
	ON_BN_CLICKED(IDC_CHECKREGBEFORE, OnBnClickedCheckregbefore)
	ON_BN_CLICKED(IDC_CHECKCOUNTRY, OnBnClickedCheckcountry)
	ON_BN_CLICKED(IDC_CHECKEXECS, OnBnClickedCheckexecs)
	ON_BN_CLICKED(IDC_CHECKDAYS, OnBnClickedCheckdays)
	ON_BN_CLICKED(IDC_CHECKRTIME, OnBnClickedCheckrtime)
	ON_BN_CLICKED(IDC_CHECKGTIME, OnBnClickedCheckgtime)
	ON_BN_CLICKED(IDC_BUTTONGEN, OnBnClickedButtongen)
	ON_BN_CLICKED(IDC_BUTTONGENFP, OnBnClickedButtongenfp)
	ON_BN_CLICKED(IDC_BUTTONVER, OnBnClickedButtonver)
	ON_BN_CLICKED(IDC_BUTTONVERFP, OnBnClickedButtonverfp)
Thanks
Enigma
Site Admin
Posts: 2945
Joined: Wed Aug 20, 2008 2:24 pm

Re: Enigma Protector questions

Post by Enigma »

Hi samsonite131,
samsonite131 wrote:I assume both Enigma Protector and Enigma Protector 64 can protect 32-bit and 64-bit programs?The only difference I see is that Enigma Protector 64 is written specifically to run on 64-bit OSes?
No, that's incorrect. x86 version of protection serves for protection of 32 bit binary files, and x64 version for 64 bit programs. The Enigma Protector itself is a 32 bit program for both editions.
So if you wish to protect x64 binaries, then you have to have x64 version of Enigma Protector.
samsonite131 wrote:I need a way send the user his registration key online. I assume I can upload keygen.dll to my web server and use it to generate a registration key from the user's hardware ID?
Yes, you may use keygen.dll for Windows servers (or libkeygen.so for Linux), but you will need to develop own shell that will generate a key using this dll file. More easy solution - just take a CGI keys generator developed specially for web servers. So you may call this cgi keygen using get or post web request and take the key. CGI keygens are in the folder "The Enigma Protector\EnigmaSDK\CGI Keygen\", there are instructions how to configure and use it: http://enigmaprotector.com/en/help/manu ... f6ec7d697d
samsonite131 wrote:I have one concern about the Enigma Protector program. When I enter the "Registration name","Hardware ID", and "Registration key", and click the Generate button, it generates a key for me.But, when I click the Generate button again, the key changes. Why am I always getting different keysfor the same name and HWID? Why isn't the key constant?
That's OK. There is some variable in the key that randomly changes each time you generate a key. Amount of different keys for same input parameters is not large btw. Nothing I can tell you more.
samsonite131 wrote:I see that the default test program, test32.exe, increased in size from 571kb to 1303kb after protection. Is this size increase constant for all protected programs (~800kb added) or does it depend on the size of the executable? E.g. Larger size increase for larger executables?
Surely no, protection adds some amount of data to executable, but it also compresses the executable itself. Protecting small programs you see that the size of protected exe increases, but if you take large input exe and protect it - it size will decrease.
samsonite131 wrote:BTW, your KeyGen VC project does not compile under MSVC++ 6.0. Can you please fix it?
Thanks for the note, we will take a look at this issue!
samsonite131
Posts: 30
Joined: Tue Oct 15, 2013 10:35 pm

Re: Enigma Protector questions

Post by samsonite131 »

No, that's incorrect. x86 version of protection serves for protection of 32 bit binary files, and x64 version for 64 bit programs. The Enigma Protector itself is a 32 bit program for both editions.
So if you wish to protect x64 binaries, then you have to have x64 version of Enigma Protector.
So, you don't offer a bundled package of 32-bit and 64-bit protection together?

That may put a dent in my plans. I do want to move on to 64-bits, as in running a native 64-bit app, but I still want to protect my old 32-bit apps for compatibility reasons, so I need both types of protection.

Thanks
Enigma
Site Admin
Posts: 2945
Joined: Wed Aug 20, 2008 2:24 pm

Re: Enigma Protector questions

Post by Enigma »

You may contact at support@enigmaprotector.com, I'm sure the solution can be found for you.
Post Reply