码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 前端加密、解密


    目录

    1.前言:

    2.应用场景举例

    3.CryptoJS加密解密

     第一步,下载插件

     第二步,在需要的文件中引入

     第三步,加密

     第四步,解密

    小结:

    4.base64 加密解密

    第一步,下载

    第二步,引入,在你需要使用的文件中引入

    第三步,加密

    第四步,解密

    小结:


    1.前言:

    像这种功能,不必追求底层怎么实现,以我而言,最好是2分钟做完加密最好,结果今天被“百度”来的坑了一把,加密还正常,解密直接成了空白字符。简直误人子弟。于是我翻了翻以前项目写的,在现有的项目里运行成功并完成功能,特此整理。


    2.应用场景举例

    今天做了一个功能,用户在表单里输入密码,加密后发给后端,点击编辑时,后端再将之前加密的数据原封不动给我,我解密后供用户编辑,最后再将编辑后的密码加密传给后端。 


    3.CryptoJS加密解密


     第一步,下载插件

    $ npm install --save js-base64

     第二步,在需要的文件中引入

    import CryptoJS from "crypto-js";//在需要的文件中引入

      第三步,加密

    1. // this.data:需要加密的数据 ;secretkey:密钥,可以自己起;cipherText:变量接收
    2. let cipherText = CryptoJS.AES.encrypt(this.data, "secretkey").toString();

      第四步,解密

    1. // this.data:要解密的数据;secretkey:密钥,要和上面加密时的一致,相当于暗号
    2. CryptoJS.AES.decrypt(this.data, "secretkey").toString(CryptoJS.enc.Utf8)

    小结:

    推荐使用这个方式,下面讲的base64有两个感觉,第一个是加密的深度不如这个,再就是遇上一些特殊字符容易报错,纯实测总结…然而,base64更简单一些,哈哈 


    4.base64 加密解密


    第一步,下载

    $ npm install --save js-base64

    第二步,引入,在你需要使用的文件中引入

    1. import { Base64 } from 'js-base64';
    2. import { encode, decode } from 'js-base64';

    第三步,加密

    var jiami = encode(str); // 加密,str是你要加密的数据

    第四步,解密

    var jiemi= decode(data); // 解密,data是你要解密的数据

    小结:

    这个使用极其简单,但是有时候会遇到错误,比如一些特殊字符,我之前用了一组纯数字,实测报错了,但是他还有其他的好处,我之前用它给二进制的音频文件加密还是很好用的,你还是酌情选择吧,不过这两种方案都是很推荐的方式,他们最大的好处就是可以解密,其他的像md5,rsa都只能加密不能解密,当然他们的加密效果更强,根据项目和需求来选择,反正殊途同归,都基本上是这个套路。如有问题欢迎评论区讨论。

  • 相关阅读:
    同创永益入选首批“金融数字韧性与混沌工程实践试点机构”
    vue ant前端定义数组 后端java 接受数组
    BSN长话短说之十一:为什么NFT会成为文化数字化的核心
    Java:学习技术栈整理
    SpringMVC 04(JSON和全局异常处理)
    【面试题】面试官:你能自己实现一个async await吗?
    Linux 调试之strace
    Python爬虫不太冷系列一:初识爬虫
    OceanBase 分布式数据库【信创/国产化】- OceanBase V4.3 更新了什么 What‘s New
    oracle中创建自动增长列
  • 原文地址:https://blog.csdn.net/wanghaoyingand/article/details/126294098
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号