js怎么加密密码进行发送?js使用RSA加密

作者 : admin 本文共842个字,预计阅读时间需要3分钟 发布时间: 2024-06-5 共3人阅读

前端接口安全方面,我们在注册登录时需要对密码等信息进行加密传输,下面是使用非对称加密算法RSA进行加密的方法使用。

一、引入加密库 jsencrypt

可以直接引用CDN中的 jsencrypt.min.js,也可以使用npm进行工程化引入。

// http://cdn.bootcdn.net/ajax/libs/jsencrypt/3.3.2/jsencrypt.min.js
function encrypt(str) {
  var jsencrypt = new JSEncrypt()
  // var pbkey = jsencrypt.pbkey
  // 生成密钥对:公钥和私钥,前端使用公钥进行加密,后端使用私钥解密
  // 私钥不可在前端暴露! 私钥不可在前端暴露! 私钥不可在前端暴露!
  var publicKey = `-----BEGIN PUBLIC KEY-----
    MIGeMA0GCSqGSIb3DQEBAQUAA4GMADCBiAKBgG1CQeJykYGvfrlJym3mMFJpMjIh
    I8t3u0UtpcjYN8DnVjo/zFivIsodgDCzsYiB5cPWTJsDHcnkl8DUnveVtlP17ziQ
    jATNxb9i/N/as2OyEqXkeJrhAlRHwI8pv5cKsuoroyKT4FA6+Vs0BM8F2vz5eG2V
    ls8C+U4m2NR8OwDfAgMBAAE=
    -----END PUBLIC KEY-----`
  jsencrypt.setPublicKey(pbkey)
  return jsencrypt.encrypt(str)
}

二、使用封装的加密方法加密

function login() {
  var fd = new FormData()
  fd.append('username', 'admin')
  fd.append('password', encrypt('123456')) // 对密码进行加密后发送请求
  // 发送请求
  // ...
}

网页数据安全方面,主要是要知道有什么方法,然后就能有目的的找已有库然后进行封装使用。

本站无任何商业行为
个人在线分享 » js怎么加密密码进行发送?js使用RSA加密
E-->