imarshad
asked on
Distributing Shape Files with a program......
Hi all,
I have developed a Vehicle Tracking Software and now its time for deployment of that project......I am using about 30 different layers of Maps (mostly Shape files) and some of them are Geo referenced BMP's....... Currently I am developing using MapObjects 2.1 and VB6......
Can someone tell me how to secure my Shape files so that no one can copy them (or use them after copying) in their project ? Currently I am keeping them into a specific folder.....But anyone who knows about GIS will make a search for *.shp and will copy all the files into a CD or thumb disk and can easily use these into his project.....so what is the safe method of distributing Shape Files with the project of VB?
Imran
I have developed a Vehicle Tracking Software and now its time for deployment of that project......I am using about 30 different layers of Maps (mostly Shape files) and some of them are Geo referenced BMP's....... Currently I am developing using MapObjects 2.1 and VB6......
Can someone tell me how to secure my Shape files so that no one can copy them (or use them after copying) in their project ? Currently I am keeping them into a specific folder.....But anyone who knows about GIS will make a search for *.shp and will copy all the files into a CD or thumb disk and can easily use these into his project.....so what is the safe method of distributing Shape Files with the project of VB?
Imran
You can’t make a bulletproof system, but you can add some difficulties for example:
- Scramble Shape files and compress them (by VB).
- Store same info into registry (absolute file locations, installation timestamp, etc.)
- Scramble Shape files and compress them (by VB).
- Store same info into registry (absolute file locations, installation timestamp, etc.)
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
>> I have never heard of a shapefile being unavailible to ArcView.
I was thinking of changing/corrupting the header of the Shape Files so that whenever someone tries to open the Shape File from any other program it will generate error....but the problem is that mapobjects might also not be able to open the Shapefile for my project......
>>- Scramble Shape files and compress them (by VB).
Can you illustrate a little bit more......I apprehend I will face the same difficulties as above........
Imran
I was thinking of changing/corrupting the header of the Shape Files so that whenever someone tries to open the Shape File from any other program it will generate error....but the problem is that mapobjects might also not be able to open the Shapefile for my project......
>>- Scramble Shape files and compress them (by VB).
Can you illustrate a little bit more......I apprehend I will face the same difficulties as above........
Imran
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
You can do something like:
1. zip SHP file
2. XOR each byte of the zipped file (newByte = oldByte XOR 0xFA)
3. rename shp extension to something different (.frm or .xyz)
In the application (each time):
1. load .xyz file
2. XOR each byte back (oldByte = newByte XOR 0xFA)
3. unzip
All steps without creating an external/temp file
Note: As I have mentioned earlier there is not protection against a dedicated person.
1. zip SHP file
2. XOR each byte of the zipped file (newByte = oldByte XOR 0xFA)
3. rename shp extension to something different (.frm or .xyz)
In the application (each time):
1. load .xyz file
2. XOR each byte back (oldByte = newByte XOR 0xFA)
3. unzip
All steps without creating an external/temp file
Note: As I have mentioned earlier there is not protection against a dedicated person.
ASKER
kissgisit,
>>Is there a reason why you wouldn't want any other program to see it.
Yes of course there is....We have produced these maps with great effort and investment. So we will not like others to just enter that system and simply copy the maps and get all of our 3-4 year work within a minute.....
I put the same question on the ESRI forum and I got the following response......
Re: Distributing Shape Files with project.....
Author A.J. Romanelli
Date Oct 18, 2004
Message This topic has been covered multiple times in this forum, search for "encrpyt shapefiles". The short answer is that this is not possible. You will need to extract the data to shapefiles and place them on disk for MO to access them, at which point any other application could make use of them as well (or they could be copied off to another location).
Subject Re: Distributing Shape Files with project.....
Author ESRI Developer Support
Date Oct 18, 2004
Message No easy solution, but here are some ideas:
http://support.esri.com/index.cfm?fa=knowledgebase.techarticles.articleShow&d=15449
So almost all the signs are discouraging but I will leave the question open for a few days so that if someone has done something on it might pop up and help me in this regard......
Imran
>>Is there a reason why you wouldn't want any other program to see it.
Yes of course there is....We have produced these maps with great effort and investment. So we will not like others to just enter that system and simply copy the maps and get all of our 3-4 year work within a minute.....
I put the same question on the ESRI forum and I got the following response......
Re: Distributing Shape Files with project.....
Author A.J. Romanelli
Date Oct 18, 2004
Message This topic has been covered multiple times in this forum, search for "encrpyt shapefiles". The short answer is that this is not possible. You will need to extract the data to shapefiles and place them on disk for MO to access them, at which point any other application could make use of them as well (or they could be copied off to another location).
Subject Re: Distributing Shape Files with project.....
Author ESRI Developer Support
Date Oct 18, 2004
Message No easy solution, but here are some ideas:
http://support.esri.com/index.cfm?fa=knowledgebase.techarticles.articleShow&d=15449
So almost all the signs are discouraging but I will leave the question open for a few days so that if someone has done something on it might pop up and help me in this regard......
Imran
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Still waiting......
Imran
Imran
ASKER
What I have done so far is that I have placed the Maps in a folder and I am the only one who knows that path....(It is a very long path)..... Then I have simply made that folder hidden using dos Commands.... Then lastly I have used "Hide Folders XP" software to make it completely invisible...... Now it is protected from novice level hackers but anyone who knows even some small level of hacking will still be able to figure it out... But it has given me at least some security which I can show to my boss......
Imran Arshad
Imran Arshad
Hi Imran,
Have you got a chanse to investigate the posibility I wrote (10/28/2004 07:26AM PDT), pariculary:
If there is possibility to have VB in "full control" and use MO objects under VB control, it could be possible to use encryption (that, in a very simplified form, I have described).
In other words is it possible to call MO objects from VB in your application?
Vilia
Have you got a chanse to investigate the posibility I wrote (10/28/2004 07:26AM PDT), pariculary:
If there is possibility to have VB in "full control" and use MO objects under VB control, it could be possible to use encryption (that, in a very simplified form, I have described).
In other words is it possible to call MO objects from VB in your application?
Vilia
ASKER
Still waiting......
ASKER
Vilia,
Thinking in your suggestions I have made slight advancement...... I have changed the projection in the map i.e the Shape files will now not show the actual Lat/Long when viewed with some other program..... But when my application loads them then it will change the projection on the fly and display those maps with correct Lat/Long...... But the biggest problem i.e with the Geo-referenced BMP's still remains.... These are the ones that we are most afraid of being stolen..... Since they have an external world file so still no way to make it useless for other people.....
Imran
Thinking in your suggestions I have made slight advancement...... I have changed the projection in the map i.e the Shape files will now not show the actual Lat/Long when viewed with some other program..... But when my application loads them then it will change the projection on the fly and display those maps with correct Lat/Long...... But the biggest problem i.e with the Geo-referenced BMP's still remains.... These are the ones that we are most afraid of being stolen..... Since they have an external world file so still no way to make it useless for other people.....
Imran
ASKER
OK I am finalizing this question......
Imran
Imran
ASKER
Imran