It is a method of exchanging cryptographic keys over a public channel and was one of the first public-key protocols. It is used to secure a variety of Internet services.