Nodejs 数据加密传输

本文和大家分享的主要是Nodejs 数据加密传输相关知识,希望对大家学习Nodejs技术有所帮助,一起来看看吧。

数据加密传输,这个目前我接触的几个方式,一个是密文传输,一个明文传输

  密文传输,就是用密钥对数据加密,使用公钥对数据解密,传输的通道可以是https的也可以是http的。

  明文传输,前提是建立一个安全的传输通道,这里使用证书对通道的安全做了防护,然后传输数据,使用的是明文。

  不过这里我就介绍下明文传输,如果是用nodejs建立安全通道使用两个库,分别是urllibrequest,这里的证书只介绍使用pfx文件

  urllib库的方式

  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());

    });

  });

}

  request库的方法

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);

    })

  });

}

 

 

文章来源:GoWhich

你可能感兴趣的:(Nodejs 数据加密传输)