L'algoritmo di scambio di chiavi Diffie-Hellman (D-H) è stato sviluppato per lo scambio di chiavi segrete attraverso canali non protetti. L'algoritmo D-H è stato modificato in un protocollo interattivo a prova di conoscenza zero. Questo protocollo è stato applicato a molti protocolli di sicurezza tra cui Security Sockets Layer (SSL) Secure Shell (SSH) e IP Sec.