he TLS. Handshake protocol: Apart from defining message exchange between the browser and the server the protocol also defines other communication param- eters. It is responsible for security negotiation and authentication of the server to the browser. Data exchange protocol: It uses a secret key for encrypting the data for secrecy and encrypting the message digest for integrity. The algorithm details and specification are agreed upon during the handshake phase. Now coming to the top most application layer, there are several protocols that offer application level security. One of the application layer security (ALS) protocols is PGP. The pretty good privacy (PGP) protocol is used at the application layer to provide security including privacy, integrity, authentication, and nonrepudiation in sending an e-mail. Combination of hashing and public key encryption is called digital signature and provides integrity, authentication, and nonrepudiation. 31.7 Implementation Example This example shows implementation of 3DES or triple DES (data encryption standard) symmetric encryption. 3DES is one of the most secure and unbro- ken cryptographic algorithm. This implementation example is written using C# programming language. The program is split to help the reader understand the code flow, SO that a similar implementation can be done in the reader's choice of programming language. 1. Add the cryptography namespace // Cryptography namespace using System. Security. Cryptography; 2. Next declare the DESCryptoServiceProvider object. This object will contain the symmetric keys required to encrypt and decrypt files. private DESCryptoServiceProvider descriptor; 3. The file selected for encryption is termed "fileName" in this example. This can be changed to the specific file to be encrypted. Next we write the func- tion to encrypt. The code has been commented SO that the reader can follow the steps involved. Fundamentals of EMS, NMS and OSS/BSS Encrypt function void EncryptFunction ) // Ouput file has same file name with extension ".e