当前位置: 首页 > article >正文

JavaScript中,常用crypto模块进行rsa加密,crypto-js模块进行md5算法

Node.js 的 crypto 模块

Node.js 内置的 crypto 模块提供了基本的加密功能,可以用于生成 RSA 密钥对和执行加密、解密操作。
代码案例:

const crypto = require('crypto');

const { publicKey, privateKey } = crypto.generateKeyPairSync('rsa', {
  modulusLength: 2048,
});

const data = "Hello, World!";
const encryptedData = crypto.publicEncrypt(publicKey, Buffer.from(data));
console.log("Encrypted data:", encryptedData.toString('base64'));

const decryptedData = crypto.privateDecrypt(privateKey, encryptedData);
console.log("Decrypted data:", decryptedData.toString());

在 Node.js 中,可以使用内置的 crypto 模块结合自己的公钥来进行 RSA 加密。
代码案例:

const crypto = require('crypto');

// 使用你的公钥(PEM 格式)
const publicKey = `-----BEGIN PUBLIC KEY-----
[你的公钥内容]
-----END PUBLIC KEY-----`;

// 要加密的数据
const data = "Hello, RSA!";

// 使用公钥加密数据
const encryptedData = crypto.publicEncrypt(publicKey, Buffer.from(data));

// 将加密后的数据转换为 base64 编码,便于存储或传输
console.log("Encrypted data:", encryptedData.toString('base64'));

crypto-js 库

如果你在使用 Node.js,可以通过 npm 安装:

npm install crypto-js

代码案例:

const CryptoJS = require('crypto-js');

// 要计算 MD5 的字符串
const message = "Hello, World!";

// 计算 MD5
const hash = CryptoJS.MD5(message).toString();

console.log("MD5 Hash:", hash);

http://www.kler.cn/a/446869.html

相关文章:

  • API开发:Flask VS FastAPI
  • 练习题 最小栈
  • Android Compose list 下拉刷新、上拉加载更多
  • jmeter 接口性能测试 学习笔记
  • CPU性能优化--函数分组
  • 【前端】vue数组去重的3种方法
  • 【数据库】SQL语句基础
  • Java中正则表达式的介绍、使用场景及示例代码
  • Java学习,输出数组元素
  • 31.设计模式
  • Element@2.15.14-tree checkStrictly 状态实现父项联动子项,实现节点自定义编辑、新增、删除功能
  • Java基础面试题17:GenericServlet和HttpServlet有什么区别?
  • 【Java】mac安装Java17(JDK17)
  • 前端数据持久化指南:LocalStorage、SessionStorage 等的区别与应用
  • 从零用java实现 小红书 springboot vue uniapp (4)个人主页优化
  • 首个!艾灵参编的工业边缘计算国家标准正式发布
  • Epic游戏使用mod
  • MySQL通过日志恢复数据的步骤
  • Java中的方法重写:深入解析与最佳实践
  • debian linux 连网自动调整时间 (报错 Unit systemd-timesyncd.service could not be found.)
  • .NET周刊【12月第2期 2024-12-08】
  • pytorch离线安装步骤
  • 中阳动态分散投资策略:构建多元化投资组合的科学路径
  • 前端引入字体文件
  • 点云空洞的边界识别提取 pso-bp 神经网络的模型来修复点云空洞 附python代码
  • DataFrame to list(pandas框架转列表)