在项目中遇到要对用户输入的密码进行RSA加密的需求,总结一下实现过程:

<body>
    <div>
      <input type="text" id="pwd" placeholder="请输入密码"/><br />
      <input type="text" id="key1" placeholder="请输入modulus参数"/><br />
      <input type="text" id="key2" placeholder="请输入exponent参数"/>
      <button id="btn">加密</button><br />
      <input type="text" id="pwd1" placeholder="加密后"/>
    </div>
  <script type="text/javascript" src="../RSA加密/security.js">
  //引入security.js文件
  </script>
  <script>
    var btn = document.getElementById('btn');
    btn.onclick = function(){
      var pwd =  document.getElementById('pwd').value;
      var modulus = document.getElementById('key1').value;
      var exponent = document.getElementById('key2').value;
      //加密
      var key = RSAUtils.getKeyPair(exponent, "", modulus);
      var apwd = RSAUtils.encryptedString(key, pwd);
      //加密后的密码;
      document.getElementById('pwd1').value = apwd;
    }
  </script>
</body>

这里的exponent参数和modulus参数讲道理是要从后台获取的,这里写做输入框获取是作测试用。

security.js 下载

security.zip