Okay, I've got an app that reads an XML file, using XmlTextReader, and it works fine. But when the software is released, the XML data needs to be readable ONLY through the app, which means the Xml file needs to be encrypted. This can be done with the .NET encryption engine... shouldn't be a problem.

Here's the question. I want to still use XmlTextReader to read the decrypted data, but no decrypted copy of the file should EVER exist on the disk. Here's what I'd like to do, and I want to know if it's possible... and how, if it is.

I read the encrypted file in, decrypt it into the Xml format, then use that decrypted text as a memory stream for XmlTextReader to pull from and process normally.

Is this possible? If not, is there another way to accomplish what I need to do?