使用jsencrypt在web前端对字符串进行Ras加密

话不多说,上代码

实例代码

下面方法,在网页中先引入jsencrypt.min.js。然后调用ToEncrypt方法示例输出加密,解密后的结果。

<script  src="/js/jsencrypt.min.js"></script>
//加密测试

function ToEncrypt(){
   // 假设这是从服务器获取的公钥(通常是通过HTTPS)  
  var privateKey = `-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAtYlkBiWSjQ42TCzGVOfvJxap7aT/ODwf0tjqOeBNDQvjLzHI\noafjFk9McdyTgOpPx2gXRZuuRkjuVDVqdPRqMGKpM/YDU64IImNFBtkM7dUuufa0\njJNE/SRHy4Wb1ayvLW6/O6J471ZV7/hpKmDkUPCuVPADHa8z4bYpp0dalniNj1LL\nNOkbwyyxLFKGUwyaTk+RyXw5pn4jU2ZtnSfSANEOIOKP7pzLUztZx7f9dSw2tuMs\nWy91UFZHrtMdDU0vZjMbMZUR9DtQJsN6di2+1dMluWBHuHwf9+ydItVo2SGGgZ50\nDfw4N4vR7Vgh6fTF0oLanIB0fIe2m0piBVXsqwIDAQABAoIBAG16bNL0J7xfXMl1\nmyorMWPOXC5P+gaM49hBLog2x+DdUWXtzQQIfn++1Og50M7G/9PO53H4IBKM+wXX\nrNrZZ4zEgywt6fW2F3u9iCxIC28GyIYnzNyWF93d2lpXuhITcRWiGzu4kNwtoef1\nVF7VTfuuGkRo9kgZl91AAUC7XFsvVbEYS3rVHtJntZrIct6QkoLRuBZIFVl6UhVb\nUijQVX4bHs44uNNqSgYDD9TegTNCP4oCjF7KJYpmXy/0RMGdMOSCGtlKVBl8MIka\n5YliPLRVyEiFpn1U96vwQvQvrRsFtSCMeLrDHg2AcvToSaqGHzWLql0plVSfXOgC\nZC7STiECgYEAxoZqz1gH9dXTgz3Rp0d8Q32uGmvBSC43BwjoDASwvMRWa8QEyo68\nF/vnw+ZqwyfXBfg4NXoDdi40bv6WvooePiEXCoy7ElaNrC5wuIoIfQ2w0g1fsCjL\nHrJ3+mK+vKejt7Xa9v+EH+b+hW8fItSCjhGYtiTvFenDuOfqqZTvPtsCgYEA6hfj\nXKHIolALjLQVtsumaBZUsTA+9vpz+YecPOupgZxP9M2I1AF2+D56sIjNCu3Xpltb\nsy1hNiQYaxJr3mFirevrBFxMgCoaXgow8TEIT0HYQxaSomKHdb07sexydbB1o5dR\n69XTnp3B5cL/FGbO47AHfc1imb3XWsNljHoF6nECgYAfy2dPzcl4lcZKPpxVLh24\nsWgw0xEhfkVR2xtO0XF8yfUNTVd3GWUGclGsDjsLBlZpnldiOShUxRGgtSVvXq95\nQ9Ns3R0Y0sPdz5I9+91gKdEn0vyAOghN4kdU0nu5ux99TKLE7Cc89MHOnP1flqlS\nF39drIyd9dJiysHKZw/qAQKBgQDbKLongx9/NklZ1U9u74I/eIiZyn1oZFonhxpy\nvn7XZSxGGBa9xRFIn9XlaG3uiXWXvXhAa3/TXD+wHnL2o13rTi+cyXylkMVWvVvM\nswcAjLiXNo7ZkD0ZsawtixwtqqK4IXcEwA97NF7PaJu+0fFnoOmikaJ6JQ11X/G2\nbpcTQQKBgG1z+BLLed2uU6NK37UvdXLu03c9T12jEh0WyX0e4P6CjlteWt1NYDtq\nxQ/VnfQgdMoBb3NE9AEUUYUIiqCDyRtKlS5rolD4Ie0/FvnQlhjZ64uv6ptFvHFo\nGmT4f8YLqF+NdXaXcYgNHPDB43wCQ2GVeVvNEgIAItAw1TuRG7KC\n-----END RSA PRIVATE KEY-----\n`;
    
var publicKey =`-----BEGIN RSA PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtYlkBiWSjQ42TCzGVOfv\nJxap7aT/ODwf0tjqOeBNDQvjLzHIoafjFk9McdyTgOpPx2gXRZuuRkjuVDVqdPRq\nMGKpM/YDU64IImNFBtkM7dUuufa0jJNE/SRHy4Wb1ayvLW6/O6J471ZV7/hpKmDk\nUPCuVPADHa8z4bYpp0dalniNj1LLNOkbwyyxLFKGUwyaTk+RyXw5pn4jU2ZtnSfS\nANEOIOKP7pzLUztZx7f9dSw2tuMsWy91UFZHrtMdDU0vZjMbMZUR9DtQJsN6di2+\n1dMluWBHuHwf9+ydItVo2SGGgZ50Dfw4N4vR7Vgh6fTF0oLanIB0fIe2m0piBVXs\nqwIDAQAB\n-----END RSA PUBLIC KEY-----\n`;
  // 实例化JSEncrypt对象  
  var encryptor = new JSEncrypt();  
  encryptor.setPublicKey(publicKey);  
    
  // 要加密的数据  
  var plaintext = "Hello, RSA234234!";  
    
  // 使用公钥加密数据  
  var encrypted = encryptor.encrypt(plaintext);  
    
  // 将加密后的数据发送到服务器(例如,通过AJAX请求)  
  // ...  
  console.log('Encrypted:', plaintext);
  console.log(encrypted);
  console.log('Encrypted:', encrypted);

  // 实例化JSEncrypt对象并设置私钥  
    var decryptor = new JSEncrypt();  
    decryptor.setPrivateKey(privateKey);  
      
    // 使用私钥解密数据  
    var decrypted = decryptor.decrypt(encrypted);  
      
    // 输出解密后的数据  
    console.log('Decrypted:', decrypted);  
}

相关推荐

  1. 使用jsencryptweb前端字符串进行Ras加密

    2024-07-15 14:46:02       23 阅读
  2. 前端加密jsencrypt使用

    2024-07-15 14:46:02       59 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-15 14:46:02       70 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-15 14:46:02       74 阅读
  3. 在Django里面运行非项目文件

    2024-07-15 14:46:02       62 阅读
  4. Python语言-面向对象

    2024-07-15 14:46:02       72 阅读

热门阅读

  1. c# Bitmap

    2024-07-15 14:46:02       20 阅读
  2. C++ 分析一个链表是不是回文,有什么思路么

    2024-07-15 14:46:02       26 阅读
  3. druid 1.2.23版本配置监控页面

    2024-07-15 14:46:02       19 阅读
  4. Python学习1---深浅拷贝

    2024-07-15 14:46:02       20 阅读
  5. 多语言环境大师:在PyCharm中管理多个Python解释器

    2024-07-15 14:46:02       22 阅读
  6. SSLRec代码分析

    2024-07-15 14:46:02       21 阅读
  7. Linux系统之部署盖楼小游戏

    2024-07-15 14:46:02       20 阅读
  8. MySQL 其他

    2024-07-15 14:46:02       23 阅读
  9. 设计模式--工厂设计模式

    2024-07-15 14:46:02       23 阅读
  10. Windows图形界面(GUI)-SDK-C/C++ - 组合框(ComboBox)

    2024-07-15 14:46:02       27 阅读
  11. vue3实现一个接球小游戏

    2024-07-15 14:46:02       19 阅读
  12. 安装 MySQL与修改配置流程

    2024-07-15 14:46:02       19 阅读
  13. html dialog不显示边框

    2024-07-15 14:46:02       24 阅读