pure js diffie-\/hellman, same api as node, most hard parts thanks to \href{https://www.npmjs.org/package/bn.js}{\texttt{ bn.\+js}} by \href{https://github.com/indutny}{\texttt{ @indutny}}. In node just returns an object with {\ttfamily crypto.\+create\+Diffie\+Hellman} and {\ttfamily crypto.\+get\+Diffie\+Hellman} in the browser returns a shim. To require the pure Java\+Script one in node `require(\textquotesingle{}diffie-\/hellman/browser');\`{}; 