Click here to Skip to main content
15,887,596 members
Please Sign up or sign in to vote.
4.67/5 (2 votes)
See more:
Hi,
I want to know that how is it possible that I want to implement a software to store data in such a way that it is transparent to windows explorer and one cant access the data and not even see it through windows but our own special service/viewer is required which run to actually access the contents of files and folder.
In my point one can implement this if we change the methodology to store the data on FAT/NTFS with your own format. So that this format is not recognised by windows but our own viewer can do this.

All answers and approaches are welcome.

Thanks in advance.
Posted

I am not sure what you mean by transparent.

To prevent your data from being "sniffed" by other applications including simply opening the file isn't so easy. You can however protect your data from being able to be usable. How unusable is up to you, basically unusable, like opening a PDF in notepad, is fairly simple, save the binary representation, you could make it more unusable by zipping it, and/or encoding it perhaps with base64.

To make it truly totally unusable you need to encrypt it, going down this road there are a lot of mistakes to be aware of, like storing your decryption key in your application. See the story of DVD decryption.
 
Share this answer
 
Users will not be happy.
There are so many services around the file system users have come to rely on that a proprietary storage invisible to common tools will make them not use your software. (You DO want users to be aware of your software, right? right?)

Do you support Desktop Search Engines? Backup? Shadow Copy Service and Version History? Virus Scan? File System Quota?

What do you want to do?

The standard method is to prevent access, but not to hide existence (at least, not to administrators).

You can create a file which gives access to the file only to an account known to your application (the account and a password can be generated automatically).

If the data is sensitive, you should also encrypt it.

Be aware that administrators - even when not having access - can take ownership. The idea is that they can't do it secretly (i.e. it is logged for audit), but they keep full control of the system.
 
Share this answer
 
v2
I mean to say by saying "Transparent" that we can access it through our application but it cant be retrieved while seeing from windows explorer.
Just for example we can saw the files on the CDFS as windows is runnning a service if there is no service then one cant see the CDFS. so in similar manner if we do play with it so that our application can only run this service and hence this system is known to our application, ordinary users cant retrieve cant copy it to other system without our own application.
I think I have cleared what i want to do.
 
Share this answer
 
As student I had a "trick"
but it (the storage) was lost
after nearly each defragmentation... :)

The data was transparent for this tool :laugh:
 
Share this answer
 
v2
I believe you will need to create a file system filter driver to filter out requests for your proprietary files. You can start reading about file system filter drivers here: http://www.microsoft.com/whdc/driver/filterdrv/default.mspx[^]

That being said, this is a not a good idea. If you're trying to prevent user access to certain files, use the file system's access control mechanisms and good encryption. If you're doing something with data directly on a drive for copy protection or some similar use, please don't. It's a fantastic way to screw up your customer's file system and disk. Just look at Sony and SecureROM as a couple of examples.
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900