Look for isolated storage:
http://msdn.microsoft.com/en-us/library/3ak841sy%28v=VS.100%29.aspx[
^]. In particular, read the section "Secure Access" to understand security implications.
If you want to encrypt the data, you should understand that the level of security depends on the strength of the encryption algorithm and, importantly, on how you store the key(s). You should consider what kind of exploit is more dangerous: ability to decrypt or modify encrypted data. It's likely that both aspects are equally important; in this case the power of
public-key cryptography (
http://en.wikipedia.org/wiki/Public-key_cryptography[
^]) may appear redundant, so faster
symmetric-key algorithms (
http://en.wikipedia.org/wiki/Symmetric_key_algorithms[
^]) would be more appropriate. Further considerations depend on the general security scenarios you want to devise.
In contrast, if you want to protect data exclusively used by only one user, you can devise a schema when a private key is known only to the user and not stored in the system (so no one of your site personnel could manipulate the users' data). In this case, you should use
public-key cryptography.
Both types of encryption algorithms are well implemented in .NET. See:
Public-key cryptography (
Asymmetric algorithms):
http://msdn.microsoft.com/en-us/library/system.security.cryptography.asymmetricalgorithm.aspx[
^];
Symmetric algorithms:
http://msdn.microsoft.com/en-us/library/system.security.cryptography.symmetricalgorithm.aspx[
^].
—SA