You do not write what implementation technology you intend to use, so let me start by recommending using the Windows Communication Foundation (WCF) instead of asmx web services.
With WCF, you can choose between many different bindings, many of which offer data protection. In general, there are two different styles of data protection for web services:
- Transport protection , where the transport mechanism itself offers encryption protection. The best known version of this is HTTPS / SSL. However, note that if you do not use client certificates, the service does not guarantee that the client is what it says.
- Message protection , where the message itself is encrypted and signed. Such messages can travel over insecure networks and still be protected.
WsHttpBinding offers message protection in accordance with open standards. This is where I will start.
source share