首页 > 编程语言 >nodejs长字符串RSA加解密解决方法

nodejs长字符串RSA加解密解决方法

时间:2024-12-11 16:30:52浏览次数:7  
标签:const nodejs privateKey 加解密 RSA publicKey key new NodeRSA

        为了让项目数据在前后端交互过程中不被拦截破解,在项目中使用RSA对数据进行加解密,同时考虑到交互数据过大情况,于是想到将数据在加密前先进行压缩,解密后在解压的思路。

        基于nodejs代码进行测试,得到了验证。

const NodeRSA = require('node-rsa');
const zlib = require('zlib');
// 生成密钥对
const key = new NodeRSA({ b: 512 }); // 生成512位密钥
const publicKey = key.exportKey('pkcs8-public'); // 导出公钥
const privateKey = key.exportKey('pkcs8-private'); // 导出私钥
// 加密函数
function encrypt(data, publicKey) {
const key = new NodeRSA(publicKey);
const encrypted = key.encrypt(data, 'base64', 'utf8');
return encrypted;
}
// 解密函数
function decrypt(encryptedData, privateKey) {
const key = new NodeRSA(privateKey);
const decrypted = key.decrypt(encryptedData, 'utf8');
return decrypted;
}
// 示例数据
let data = {
        "glu": [
            { 
                "id": "46dc16a9-d348-4f35-9078-fbea738feba0",
        

标签:const,nodejs,privateKey,加解密,RSA,publicKey,key,new,NodeRSA
From: https://blog.csdn.net/qq_33930144/article/details/144403954

相关文章

  • js逆向学习-1 逆向rsa简单加密
    RSA加密Rsa加密包含一个key和一个mode这个mode默认10001,也可以修改观察发送的数据首先点击登录选择xhr这个筛选模块,可以看到这里面只有这个check的数据请求,然后查看发送的数据,可以看到这里的密码是进行加密的然后记录这些值打断点知道了请求和加密的数据,现在就是去......
  • RSA加解密
    无废话,直接上工具类usingSystem.Security.Cryptography;usingSystem.Text;namespaceDZCloudServer.Core.Util{publicclassEncryptUtil{/*RSA加密算法*////<summary>///获取RSA密钥///下标......
  • nodejs初学
    Node.js基础Node.js是一个基于ChromeV8引擎的JavaScript运行时,用于在服务端运行JavaScript代码。以下是Node.js的基本概念和常用功能。Node.js简介特点单线程、非阻塞I/O:通过事件循环和异步I/O,提高高并发能力。基于模块化:使用CommonJS模块规范,代码组织更清......
  • XCVM1302-3HSEVFVB1369通过业界领先的 DDR 内存接口实现高数据吞吐量 - AMD Versal Pr
    XCVM1302-2MLIVSVF1369XCVM1302-2MSEVSVF1369XCVM1302-2MSIVFVB1369XCVM1302-2MSIVSVF1369XCVM1302-3HSEVFVB1369明佳达Versal自适应SoC兼具可编程逻辑和加速引擎的灵活处理能力,以及先进的内存和接口技术,可为各类应用实现定制化、强大的异构加速。VersalPrime系列是基......
  • Nodejs实现的社区居民互助系统的设计与实现-车位房子租赁
    《[含文档+PPT+源码等]精品Nodejs实现的社区居民互助系统的设计与实现[包运行成功]》该项目含有源码、文档、PPT、配套开发软件、软件安装教程、项目发布教程、包运行成功以及课程答疑与微信售后交流群、送查重系统不限次数免费查重等福利!软件开发环境及开发工具:操作系统:Wind......
  • (附源码)NodeJS宠物寄存系统-计算机毕设 31226
    NodeJS宠物寄存系统摘 要本项目旨在利用Node.js技术开发一个宠物寄存系统,解决宠物主人寄存宠物的便捷性和信息可追溯性的问题。通过该平台,宠物主人可以方便地在线预订宠物寄存,并获得相关的提醒和服务。该平台将采用数据库设计、用户认证与授权、前后端交互、寄存功能......
  • COMP 250 BFS traversal
    FinalProjectCOMP250Fall2024posted:Wednesday,Dec.4,2024due:SundayDec.15,2024,at23:59forachancetoreceiveMastery,ORFriday,Dec.20,2024at23:59GeneralInstructionsSubmissioninstructions–Pleasenotethatthesubmissiondeadlinefo......
  • 攻防世界-baigeiRSA2
    ⭕考察内容1、非标准RSA加密算法2、逆元求解3、因式分解(yafu)一、题目给出一串代码,大概看一眼是类似RSA的加密算法,但是其n的选取并非2个素数的乘积,而是5个素数的乘积,所以并不是标准的RSA加密。再看一眼文件,发现给出了n和e二、解题1、因数分解由于n仅有96位,所以尝试使......
  • Java和.Net互相使用RSA加密时的问题和处理方法
    前言我们产品是使用JAVA语言开发的,有个供第三方获取Token的接口,过程大概就是第三方先调一个注册接口,获取一个RSA公钥,然后用通过公钥加密后的一些认证信息调用获取Token的接口,如果信息无误,则发放Token。前段时间就遇到了对方是使用.Net进行开发的系统,在第一步获取公钥时没用问题,......
  • ubuntu(22.04) 安装typescript基础运行环境 (nodejs, npm)
    https://nodejs.org/zh-cn/download/package-manager这里是nodejs的官网教程,可以直接看官网安装nodejs和npm不过是外国的服务器,可能下载会比较慢,这里我直接给出node.js22.12.0的安装脚本,(对应的官网的选项为这3个22.12.0Linuxnvm)点击就可以下载了nodejs-22.12.0-install.......