Nodejs 数据加密传输

我俩绝配 3年前
   <p>数据加密传输,这个目前我接触的几个方式,一个是密文传输,一个明文传输</p>    <p>密文传输,就是用密钥对数据加密,使用公钥对数据解密,传输的通道可以是https的也可以是http的。</p>    <p>明文传输,前提是建立一个安全的传输通道,这里使用证书对通道的安全做了防护,然后传输数据,使用的是明文。</p>    <p>比较专业的 可以后面慢慢分享,不过这里我就介绍下明文传输,如果是用nodejs建立安全通道</p>    <p>使用两个库,分别是urllib和request,这里的证书只介绍使用pfx文件</p>    <p>urllib库的方式</p>    <pre>  <code class="language-javascript">const urllibRequest = (url, method, data, pfx, pass) => {    return new Promise(function(resolve, reject) {      let options = {        data: data,        method: method,        pfx: pfx,        passphrase: pass,        rejectUnauthorized: false      }      urllib.request(url, options, function(err, data, res) {        if (err) {          return reject(err);        }        return resolve(data.toString());      });    });  }</code></pre>    <p>request库的方法</p>    <pre>  <code class="language-javascript">const httpRequest = (url, method, data, pfx, pass) => {    return new Promise((resolve, reject) => {      let options = {        url: url,        method: method,        form: data,        headers: {          'Content-type': 'application/x-www-form-urlencoded'        },        agentOptions: {          pfx: pfx,          passphrase: pass,          rejectUnauthorized: false        }      };      request(options, function(err, httpResponse, data) {        if (err) {          return reject(err);        }        return resolve(data);      })    });  }</code></pre>    <p> </p>    <p>来自:http://www.gowhich.com/blog/779</p>    <p> </p>