Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

How to prevent exe generation

Posted on 2002-06-14
6
Medium Priority
?
389 Views
Last Modified: 2010-04-04
Hope somebody could give me some ideas about this:

I work in a Delphi development team as a programmer and project manager. As my responsability, I have to prevent that anyone of my team programmers take  the code with him, change a little the user interface and sales the product. Understand what I mean?

The Programmers needs to get access to all resources of the project (forms, units). I have been thinking in a some kind of restriction to prevent Exe generation like finding (in the build of project) for a hidden function or DLL or a password key. Another  fact is that the validation got to be hard to passby or find (you know, we are  programmers, we are smart).

All your comments will be apreciatted

NetoMan :)
0
Comment
Question by:NetoMan
5 Comments
 
LVL 2

Accepted Solution

by:
Hagen040798 earned 132 total points
ID: 7079745
Some Units should be used in only complied form (packages), compiled by you as example. Then add some special units into this package or units that need an registrationkey. When You sale the compiled Application You have the get the right Registrationkey to let these protected units properly working. As Registrationkey are best possible some asymmetric stuff used and some code of the DCU can be encrypted. The DCU Format is not public but they exists on the WEB some DCU decompiler. So I think it where possible to encrypt DCU's code selective. In the unit initialization there then checked the right registrationkey and all procedure can be decrypted.

All in one an very big effort, better if you don't trust the programmers would be a strictly contract, I mean.

Hagen
0
 
LVL 46

Assisted Solution

by:aikimark
aikimark earned 132 total points
ID: 7079826
NetoMan,

If you're that concerned about the honesty of your programmers, you need to do the following:
1. require non-disclosure agreements be signed by all staff.
2. require non-compete agreements be signed by all staff.
Note: both 1 and 2 usually apply to new applicants.  current applicants usually can't be forced to sign anything, unless you offer them something like a promotion.
3. create a "clean room" development environment with no email, no CD burners, and locked diskette drives.  The network in the room is not connected to other company LANs or the internet.
4. tie developer rewards to company performance.  If a developer pirates your software, they hurt part of their revenue stream.  Also, there is peer pressure to discourage piracy, since everyone is benefitting from software sales.
5. buy them new systems upon condition that they give you all their backups along with their systems.  You must agree to protect their privacy and destroy their backups.  This is tricky, since they must decide on the spot and you will follow them home to retrieve their system and data along with their new system, preventing them from hiding backups with company data.
0
 
LVL 9

Assisted Solution

by:ginsonic
ginsonic earned 132 total points
ID: 7080092
I don't think that you can protect yourself at this stage.

I have same problem here. I remove any floppy or CD-RW from my systems but this don't solve my problem ( an external divice ... ).No internet, too.

An ideea is to have on systems just dcu for used components. Somewhere verify if is your system ( bios serial, HDD serial .. ). But any protection can be crack :(

The best idea is to select your people and stimulate their to be honests.
0
 
LVL 2

Author Comment

by:NetoMan
ID: 7096828
I Agree with you guys that honesty and selectivity of the group is the "panacea" or the perferct environment. Since I can´t do anything about that, can you give me some examples/routines or references for implement some of the proteccionts you say.

All your comments are apreciated. I can split or give more points to all of you.

NetoMan :)
0
 
LVL 1

Expert Comment

by:pnh73
ID: 9010907
No comment has been added lately, so it's time to clean up this TA.
I will leave a recommendation in the Cleanup topic area that this question is:

Split between aikimark, Hagen and ginsonic

Please leave any comments here within the next seven days.
 
PLEASE DO NOT ACCEPT THIS COMMENT AS AN ANSWER!
 
Paul (pnh73)
EE Cleanup Volunteer
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The uses clause is one of those things that just tends to grow and grow. Most of the time this is in the main form, as it's from this form that all others are called. If you have a big application (including many forms), the uses clause in the in…
In this tutorial I will show you how to use the Windows Speech API in Delphi. I will only cover basic functions such as text to speech and controlling the speed of the speech. SAPI Installation First you need to install the SAPI type library, th…
Video by: ITPro.TV
In this episode Don builds upon the troubleshooting techniques by demonstrating how to properly monitor a vSphere deployment to detect problems before they occur. He begins the show using tools found within the vSphere suite as ends the show demonst…
Integration Management Part 2

877 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question