uniapp 小程序实现 RSA 加密

  • 引言
  • 创建并使用 jsencrypt 进行 RSA 加密
  • 创建 rsa 文件
  • 在需要的地方引用
  • 注意

引言

前端开发时,有时候不可避免会使用到加密,本人在这次的小程序项目中就使用到了 RSA 这种非对称性加密,因此对这次的使用进行了记录

创建并使用 jsencrypt 进行 RSA 加密

uniapp 小程序中 npm 下载 jsencrypt 或者引用包,会因为小程序和h5由于元素的不同出现报错,因此需要更改 jsencrypt 文件,可点击下面链接进行 jsencrypt 文件下载并使用

下载链接: https://download.csdn.net/download/m0_64344940/86812930

创建 rsa 文件

// rsa.js
import Jsencrypt from '@/utils/jsencrypt.js'; // 此处是上面的文件引用let publicKey ='-----BEGIN PUBLIC KEY-----' +  // 必须添加,切记'' +  // 此处使用后端给的公钥'-----END PUBLIC KEY-----'   // 必须添加,切记// msg 类型为 string 字符串,不能搞错类型,不然生成之后的内容后端会解密失败
export const rsaEncrypt = (msg) => {const JsRsa = new Jsencrypt()JsRsa.setPublicKey(publicKey)return JsRsa.encrypt(msg)
}

在需要的地方引用

本项目是在接口的请求头使用的

import { rsaEncrypt } from '@/utils/rsa.js'export const request = (option) => {// 事先定义好,可以防止时间差导致解密出来的时间戳和传值的时间戳不一样const times = new Date().getTime()...header["sign"] = rsaEncrypt(times.toString())header["timestamp"] = times
}

注意

rsaEncrypt 方法的参数一定要是字符串,不能是其他类型!!!

欢迎各位大神指教,如有错误,麻烦各位大神指出,谢谢

uniapp 小程序实现 RSA 加密相关推荐

  1. uniapp小程序使用RSA加密解密

    1.安装wxmp-rsa npm i wxmp-rsa -S 2.新建rsa.js文件 import WxmpRsa from 'wxmp-rsa'//公钥和私钥换自己的 // 定义公钥 const ...

  2. uniapp小程序唤醒微信支付

    uniapp小程序唤醒微信支付 示例如下 wxpay(e) {uni.getProvider({//获取支付类型service: "payment",//oauth 授权登录sha ...

  3. 微信小程序——crypto-js参数加密、解密问题

    前言: 在很多项目中涉及到信息敏感问题,为防止http信息传输时参数被劫持进行二次传输的尴尬局面,最好使用前端加密参数请求,后端解密,返回数据时后端加密,前端解密.防止信息被盗取.目前主流的加密方式有 ...

  4. uniapp小程序迁移到TS

    uniapp小程序迁移到TS 我一直在做的小程序就是 山科小站 也已经做了两年了,目前是用uniapp构建的,在这期间也重构好几次了,这次在鹅厂实习感觉受益良多,这又得来一次很大的重构,虽然小程序功能 ...

  5. uni-app 小程序多图上传

    uni-app 小程序多图上传: 官方提示说,App支持多文件上传,微信小程序只支持单文件上传,传多个文件需要反复调用本API.所以跨端的写法就是循环调用本API 步骤: //1.首先通过 uni.c ...

  6. uniapp小程序发布经验

    一.概述 uniapp已经开发好了,有需求转为小程序发布,一般上转为微信小程序. 这里以微信小程序为例. 二.转化方法 1.打开HBuilder X开发工具: 2.打开uniapp代码: 3.点击菜单 ...

  7. uniapp小程序开发设置系统状态栏高度、全屏背景图设置

    效果: uniapp小程序开发设置系统状态栏高度/全屏背景图设置 <view class="login"><view class="status_bar ...

  8. uni-app小程序分享

    uni-app小程序分享(全局) 在common文件下share.js export default {data() {return {share: {// 转发的标题 (默认标题)title: '' ...

  9. 【uniapp小程序】request发起请求

    这里写目录标题 写在前面 微信小程序和uniapp小程序区别

最新文章

  1. Python字符串处理函数
  2. java question_Core Java Question List No3
  3. 分享一款jquery的日期插件
  4. 发布json数据_技术分享 | MySQL 8.0.17 GA 发布!
  5. python PyQt5.QtWidgets.QWidget类
  6. sess.run的错误
  7. markdown数学公式换行对齐_Markdown语法详细
  8. garageband 淡出_为什么史蒂夫·乔布斯(Steve Jobs)的GarageBand展示了有史以来最好的现场产品演示...
  9. gc日志一般关注什么_JVM(23)JVM的Full GC日志
  10. 如何使用Java进行简单爬虫
  11. TurboMail邮件服务器腾云驾务云化邮件办公
  12. 如何高效运作机器学习团队(机器学习入门第四篇)
  13. 2020年美赛C题(数据分析题)O奖论文笔记 (1)
  14. C语言 | 输出魔方矩阵
  15. echats统计图表的设计与实现
  16. let与var的区别(重点看例子)
  17. k30s,MIUI12.5开发版线刷为稳定版12.0.3
  18. SASS实现颜色卡动画
  19. 深度学习与TensorFlow实战(十)卷积神经网络—VGG(16)神经网络
  20. 通过java实现合成海报

热门文章

  1. Mybatis-Plus 传入时间查询的方式
  2. ImToken 钱包的研究
  3. uni-app - 设置最外层容器高度为100%
  4. DDSM数据库使用说明
  5. 使用RPA有什么好处
  6. 密码框后的小眼睛怎么写?
  7. MySQL —— 数据库基础
  8. 1bit 寄存器 coursera
  9. Python自学指南-你好啊!Python
  10. Redis单线程和多线程