Click here to Skip to main content
15,887,267 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
My application build in dot net technology and we are storing client specific data on cloud.Since the information is sensitive , we want to encrypt sensitive information before storing it to cloud. so can anyone suggest what is the best way to do this.
Also, i am using an express version of visual studio for building my application.
Posted
Comments
Member 11364465 21-Jan-15 11:05am    
Thanks..but our scenario is bit different..I am explaining in details below:-

Our application send sensitive information to clients(each client has its own sensitive information).Not all the information will be sensitive but only few fields will be sensitive so whenever client request data, we want to encrypt that information and send it across.To the client ends, they will have their key management system(different client can have different key management services.) so now what we want to achieve is that when client receive this information then our response( probably in javascprit) will ask them to provide key from the technique they are using and using this key they will decrypt the response.This seems to be bit complicated but it will be really heplful if anyone can suggest some solution for it.
Zoltán Zörgő 21-Jan-15 11:53am    
Please craify what is "key managemet system" in your case?
You client application is thick (Windows Forms) or thin client (ASP.NET based)?
Member 11364465 21-Jan-15 23:23pm    
It is a ASP.NET based application and by key management system, i mean any service that encrypt my information before sending it to client.
Zoltán Zörgő 22-Jan-15 3:19am    
Ok. Should I give you further advice, or you got what you wanted as you have accepted an answer?
Member 11364465 22-Jan-15 10:43am    
I accepted it but that doesn't work for us.It will be helpful if you have some knowledge for the same and if you can share some related links also.

If your information is that sensitive, then you should buy a fully functional version of Visual Studio in order to be able to incorporate all required features. As to encrypting the data there are many articles on the internet that offer suggestions. You could also use the encryption option in SQL server, for your database.
 
Share this answer
 
Comments
CHill60 21-Jan-15 11:26am    
OP is trying to respond to you
Richard MacCutchan 21-Jan-15 11:34am    
Thanks.
Thanks..but our scenario is bit different..I am explaining in details below:-

Our application send sensitive information to clients(each client has its own sensitive information).Not all the information will be sensitive but only few fields will be sensitive so whenever client request data, we want to encrypt that information and send it across.To the client ends, they will have their key management system(different client can have different key management services.) so now what we want to achieve is that when client receive this information then our response( probably in javascprit) will ask them to provide key from the technique they are using and using this key they will decrypt the response.This seems to be bit complicated but it will be really heplful if anyone can suggest some solution for it.
 
Share this answer
 
Comments
CHill60 21-Jan-15 11:26am    
If you want to reply to a post then use the "Have a Question or Comment" link on that post, or in the case of a comment, use the "Reply" link. That way the poster will be informed about your response.
Member 11364465 21-Jan-15 12:05pm    
Got your point ..thanks.
Richard MacCutchan 21-Jan-15 11:37am    
I think you need to get a security consultant in and discuss it with them. This is far too large a subject to be answered in a technical quick answers forum.
Member 11364465 21-Jan-15 12:05pm    
Agreed to your point that it a large subject to answer but i am sure i am not the first one who want to implement this functionality.So i just want to take advice from the experts.
Richard MacCutchan 21-Jan-15 12:24pm    
As I said before, you need to talk to a proper security expert. This question is impossible to answer in a forum such as this. There are far too many issues to consider.
You can use any Visual Studio edition you need and you can afford. See a comparison of features here: http://www.visualstudio.com/en-us/products/compare-visual-studio-products-vs.aspx[^], I suggest you try Community edition[^]. It is also free, and can be also used for commertial applications (check this[^] article), but much better than Express.

You wrote, that you want to host your application and data in the cloud. First of all, if you don't trust your provider, forget it. In general you don't encrypt data on server side. You can, but in case you need to dechyper data on server side, it has no use. So le't suppose you trust your provider, and data is stored unencrypted. You wrote you need to enctrypt the communication of the web application. The mechanism you described is existing, it is called https[^]. All the data is travelling encrypted from server to client. You can combine http and https as encryption costs. It's resource cost might or might not be charged by the provider, but if you want regular or extended (green bar) certificate it will cost you for sure. Still, this is the only way to assure your clients that your site is trustworthy. Self-signed certificates are for development purposes only. If you want, you can build your application in a way where GUI elements are served over http, and all data is travelling via https, but if you can afford, deliver all contetn over https.

But https won't assing fixed key to the clients. If you need that you can implement PKI on javascript side (http://pkijs.org/[^]), but I don't think it is the way to do this. If you want to restrict access to the site, and harden the application, you can use client side cerificate authentication. You issue certificates for the clients, which they install. You can configure IIS[^] to use authenticate the client based on this. Windows certificate store is secure, I can't figure out a situation where certificate authentication and https are not enough. Yes, it is automatic, thus client don't need to povide any key, but you still can add username-password authentication on top of it.
 
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