前端加密与解密的几种方式
1.base64加密方式
1. base64是什么?
Base64,顾名思义,就是包括小写字母a-z、大写字母A-Z、数字0-9、符号"+"、"/"一共64个字符的字符集,(另加一个“=”,实际是65个字符,至于为什么还会有一个“=",这个后面再说)。任何符号都可以转换成这个字符集中的字符,这个转换过程就叫做base64编码。
2.示例
<script>
let str = 'ImGod';
let str64 = window.btoa(str);//Base64加密
console.log('转化后:'+str64);
let jm = window.atob(str64);//Base64解密
console.log('解码后:'+jm);</script>
结果:
![]()
2.MD5 加密方式(不可逆)
1.什么是MD5
MD5是一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。MD5由美国密码学家罗纳德·李维斯特(Ronald Linn Rivest)设计,于1992年公开,用以取代MD4算法。
MD5.JS是通过前台js加密的方式对密码等私密信息进行加密的工具。
2.引入
<script src="https://cdn.bootcss.com/blueimp-md5/2.12.0/js/md5.min.js"></script>
4.示例
<script>
// MD5加密方式
// hex_md5(data);//data表示你要加密的数据
let str = 'abc';
let newStr = md5(str);
console.log(newStr);
</script>
结果:
3.编码和解码字符串
1.什么是编码和解码字符串
这个主要是使用JS函数的escape()和unescape(),分别是编码和解码字符串。
escape采用ISO Latin字符集对指定的字符串进行编码。所有的空格符、标点符号、特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该字符在字符集表里面的编码的16进制数字)
在很多脚本语言的应用当中,escape函数是一个可转换编码的函数,比如javascript 的 ajax 中,向a.php传递参数?city=北京,可先将"北京"用escape重新编码,再进行传递,在服务器端接收后再解码才不会出现乱码。escape一般用于传递URL参数和类似urlencode base64_encode函数是类似的。
2 .示例
<script>
//编码和解码字符串
let str = '在山的那边';
let str1 = escape(str);
let str2 = unescape(str1)
console.log('编码:'+str1);
console.log('解码:'+str2);
</script>
结果:
4.sha1.js (不可逆)
1. sha1是什么?
SHA-1是一种数加密算法,该算法的思想是接收一段明文,然后以一种不可逆的方式将它转换成一段(通常更小)密文,也可以简单的理解为取一串输入码(称为预映射或信息),并把它们转化为长度较短、位数固定的输出序列即散列值(也称为信息摘要或信息认证代码)的过程。
2. 引入
<script src="https://cdn.bootcss.com/js-sha1/0.6.0/sha1.js"></script>
目前没有在网上没找到下载地址,只能在线引入。
3. 示例
<script>
//sha1加密方式
let str = 'abcd';
let sha_1 = sha1(str);
console.log(sha_1);
</script>
结果:
相关文章:
![](https://img-blog.csdnimg.cn/cd4368aca59a44b8bfb99957e19c3157.png)
前端加密与解密的几种方式
1.base64加密方式 1. base64是什么? Base64,顾名思义,就是包括小写字母a-z、大写字母A-Z、数字0-9、符号""、"/"一共64个字符的字符集,(另加一个“”,实际是65个字符,至于…...
![](https://img-blog.csdnimg.cn/d3891ce1aef247c1979caa2c58f00fc9.png#pic_center)
详解Spring Bean的生命周期
详解Spring Bean的生命周期 Spring Bean的生命周期包括以下阶段: 1. 实例化Bean 对于BeanFactory容器,当客户向容器请求一个尚未初始化的bean时,或初始化bean的时候需要注入另一个尚未初始化的依赖时,容器就会调用createBean进…...
![](https://www.ngui.cc/images/no-images.jpg)
详解Shell 脚本中 “$” 符号的多种用法
通常情况下,在工作中用的最多的有如下几项: $0:Shell 的命令本身 1到9:表示 Shell 的第几个参数 $? :显示最后命令的执行情况 $#:传递到脚本的参数个数 $$:脚本运行的当前进程 ID 号 $*&#…...
![](https://www.ngui.cc/images/no-images.jpg)
Redis如何实现Session存储
在Redis中实现Session存储,主要有两种方式:使用Spring Session和手动存储。 使用Spring Session:Spring Session是Spring框架提供的一个模块,用于简化Session管理,并将Session数据存储到外部数据存储中,如Redis。使用Spring Session,你只需要在Spring Boot项目中添加相应…...
![](https://img-blog.csdnimg.cn/img_convert/347711c9d8b8668388a8399eb29b6ee7.jpeg)
安防视频监控汇聚EasyCVR平台接入Ehome告警,公网快照不显示的原因排查
智能视频监控汇聚平台TSINGSEE青犀视频EasyCVR可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等,视频监控管理平台…...
![](https://www.ngui.cc/images/no-images.jpg)
【Springboot】@ComponentScan 详解
文章目录 ComponentScanComponentScan ANNOTATION 和 REGEXComponentScan CUSTOMComponentScan ASSIGNABLE_TYPE ComponentScan ComponentScan 是 Spring 框架中的一个注解,用于自动扫描和注册容器中的组件。 使用 ComponentScan 注解可以告诉 Spring 在指定的包或…...
![](https://www.ngui.cc/images/no-images.jpg)
flask-----信号
安装: flask中的信号使用的是一个第三方插件,叫做blinker。通过pip list看一下,如果没有安装,通过以下命令即可安装blinker: pip install blinker flask其中有内置的信号 template_rendered _signals.signal(temp…...
![](https://img-blog.csdnimg.cn/d7e6a03a3e1d4535a0e77b8808293983.png)
10_Vue3 其它的组合式API(Composition API)
Vue3 中的其它组合式API 1.shallowReactive 与 shallowRef 2. readonly 与 shallowReadonly 3.toRaw 与 markRaw 4.customRef 5.provide 与 inject 6.响应式数据的判断...
![](https://img-blog.csdnimg.cn/cf8b9d506e51427a942c3b21e90d2f76.png)
COCOS项目运行的时候图片模糊的原因
1、首先。用X坐标来分析,如果size*Anchor Position有小数,如上图57*0.5667695.5。这样就会导致x模糊。如果y同样计算结果包含小数,那么y也会模糊。xy同时模糊的情况是最模糊的。 2、如果当前node没有问题,那么就要检查上级node是…...
![](https://img-blog.csdnimg.cn/1e4215fbd6984f6bbcacb7aed8cb1759.png)
Python中搭建IP代理池的妙招
在Python的爬虫世界里,你是否也想搭建一个功能强大的IP代理池,让你的爬虫无忧无虑地畅游各大网站?今天,我就来教你使用Scrapy框架搭建IP代理池,让你的爬虫更加智能、高效!跟着我一步一步来,轻松…...
![](https://www.ngui.cc/images/no-images.jpg)
学习pytorch 2
学习pytorch 2 2. dataset实战代码数据集 2. dataset实战 B站小土堆视频 代码 from torch.utils.data import Dataset from PIL import Image #import cv2 import osclass MyData(Dataset):def __init__(self, root_dir, label_dir):self.root_dir root_dirself.label_dir …...
![](https://www.ngui.cc/images/no-images.jpg)
elementui动态表单实现计算属性携带参数,并将计算出的值四舍五入保留两位小数
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言方法1方法2结论 前言 写项目的时候,遇到需要在动态表单中,将同一级输入框输入的内容计算出来,并动态显示,发现c…...
![](https://www.ngui.cc/images/no-images.jpg)
嵌入式面试5 -makefile shell
2、 如果有一个简单的helloworld项目目录如下: tree helloworld helloworld |– file2.h |– file1.cpp |– file2.cpp 请编写一个Makefile文件。 答: TARGET helloworld CXX g COMPILE : $(COMPILE) file1.cpp COMPILE : $(COMPILE) file2.cpp OBJE…...
![](https://www.ngui.cc/images/no-images.jpg)
获40余家主机厂青睐,这家OTA「吸金王」完成超亿元B2轮融资!
继今年4月获得上汽集团旗下尚颀资本及其合作方山高投控的投资后,近日上海艾拉比智能科技有限公司(以下简称“艾拉比”)正式完成总额过亿元的B2轮融资,新的投资方为聚卓资本、老股东国科新能继续增持,势能资本持续担任独…...
![](https://img-blog.csdnimg.cn/img_convert/612c670bd59626604d013ba9979bfef3.png)
CGI, FastCGI, WSGI, uWSGI, uwsgi分别是什么?
CGI 1、通用网关接口(Common Gateway Interface/CGI),CGI描述了服务器(nginx,apache)和请求处理程序(django,flask,springboot web框架)之间传输数据的一种标准. 2.所有bs架构软件都是遵循CGI协议的 3.一…...
![](https://img-blog.csdnimg.cn/00ddc5bdfa14495ab9c20a27c55b16d0.png)
Android T 窗口层级相关的类(更新中)
窗口在App端是以PhoneWindow的形式存在,承载了一个Activity的View层级结构。这里我们探讨一下WMS端窗口的形式。 可以通过adb shell dumpsys activity containers 来看窗口显示的层级 窗口容器类 —— WindowContainer类 /*** Defines common functionality for c…...
![](https://img-blog.csdnimg.cn/53eb78e1d88148959258a4b30d6d7e1d.png)
【云原生】深入掌握k8s中Pod和生命周期
个人主页:征服bug-CSDN博客 kubernetes专栏:kubernetes_征服bug的博客-CSDN博客 目录 1 什么是 Pod 2 Pod 基本操作 3 Pod 运行多个容器 4 Pod 的 Labels(标签) 5 Pod 的生命周期 1 什么是 Pod 摘取官网: Pod | Kubernetes 1.1 简介 Pod 是可以在 …...
![](https://www.ngui.cc/images/no-images.jpg)
openKylin+KingbaseES+Nginx安装
openKylin开放麒麟开启ssh 一、查看ssh服务是否开启。 终端输入命令:sudo ps -e |grep ssh ,只显示如下内容则证明未安装ssh服务。 2127 ? 00:00:00 ssh-agent若显示如下内容则证明ssh服务已开启。 1657 ? 00:00:00 ssh-agent 2349 ?…...
![](https://img-blog.csdnimg.cn/08542e0ccc7a49d1bc26342ff32e2a4e.png)
lc1.两数之和
暴力解法:两个for循环,寻找和为target的两个数的索引 时间复杂度:O(n2) 空间复杂度:O(1) 哈希表:遍历数组,将nums数组的数和索引分别存储在map的key和value中,一边遍历,一边寻找是…...
![](https://www.ngui.cc/images/no-images.jpg)
c# 初始化列表,并给列表里面所有的元素进行初始化
Enumerable.Repeat 方法是用于生成一个包含指定元素重复若干次的序列。它接受两个参数,第一个参数是要重复的元素,第二个参数是重复次数。 下面是 Enumerable.Repeat 方法的用法和示例: using System; using System.Collections.Generic; u…...
![](https://img-blog.csdnimg.cn/78a7ec0dce884f4f8504e006378183f5.png)
Java笔记(三十):MySQL(上)-- 数据库、MySQL常用数据类型、DDL、DML、多表设计
一、数据库 0、MySQL安装,IDEA配置MySQL 用MySQL installer for windows(msi)MySQL默认安装位置:C:\Program Files\MySQL\MySQL Server 8.0配置环境变量使用前先确保启动了mysql服务my.ini位置:C:\ProgramData\MySQL…...
![](https://www.ngui.cc/images/no-images.jpg)
SQL笔记-正态分布函数(二)
在Oracle数据库中,并没有直接提供计算正态分布函数(累积分布函数)的内置函数。不过,你可以使用PL/SQL编程语言来实现一个自定义的正态分布函数。下面是一个简单的示例: CREATE OR REPLACE FUNCTION normdist(x NUMBER…...
![](https://img-blog.csdnimg.cn/cd5db38a49474116b0b4f2c9246e5ada.png)
【LeetCode】数据结构题解(12)[用栈实现队列]
用栈实现队列 😉 1.题目来源👀2.题目描述🤔3.解题思路🥳4.代码展示 所属专栏:玩转数据结构题型❤️ 🚀 >博主首页:初阳785❤️ 🚀 >代码托管:chuyang785❤️ &…...
![](https://img-blog.csdnimg.cn/9a1e10fb366d4b93bd15fb73fba2a9c9.png)
嵌入式Linux下LVGL的移植与配置
一.sdk源码下载路径 1.官方源码下载路径如下: https://github.com/lvgl/lvgl git下载方式 git clone https://github.com/lvgl/lvgl.git 2.个人移植好的源码8.2版本下载路径: 链接:https://pan.baidu.com/s/1jyqIennsQpv-RB4RyKvZyg?pwdc68e 提取…...
![](https://img-blog.csdnimg.cn/5b87de8003354c18bac320b5a5acc90c.png)
leetcode每日一练-第70题-爬楼梯
一、思路 动态规划 二、解题方法 使用一个动态规划数组 dp 来记录到达每个台阶的不同方法数。初始情况下,当台阶数为 1 时,方法数为 1,当台阶数为 2 时,方法数为 2。然后,我们从第 3 阶开始逐步计算每一阶的方法数&…...
![](https://img-blog.csdnimg.cn/img_convert/d17f23eeb27e55b8a125fcfa19271c0c.jpeg)
设备使用RTMP推流到安防监控EasyCVR视频汇聚平台,为何只有FLV格式无法播放?
TSINGSEE青犀视频安防监控视频汇聚平台EasyCVR基于云边端一体化架构,具有强大的数据接入、处理及分发能力,可提供视频监控直播、云端录像、云存储、录像检索与回看、智能告警、平台级联、云台控制、语音对讲、智能分析等功能。 智能视频监控平台EasyCVR可…...
![](https://img-blog.csdnimg.cn/408ca9fec52e4e8f8ebd022b5d4d3350.png)
arcgis宗地或者地块四至权利人信息提取教程
ARCGIS怎样将图斑四邻的名称及方位加入其属性表 以前曾发表过一篇《 如何把相邻图斑的属性添加在某个字段中》的个人心得,有些会员提出了进一步的要求,不但要相邻图斑的名称,还要求有方位,下面讲一下自己的做法。 基本思路是:连接相邻图斑质心,根据连线的角度确定相邻图斑…...
![](https://img-blog.csdnimg.cn/36ef2605120b4c8eadffa8161e91f720.jpeg)
乐鑫首创|使用 ESP RainMaker® 私有云定制 Matter 生态
ESP RainMaker 是乐鑫的 AIoT 云平台,支持客户自主部署私有物联网云,从而全面掌握数据所有权和管理权,实现定制功能与服务。ESP RainMaker 云后端采用 AWS 无服务器架构,拥有开源的 iOS 和 Android 移动端 APP、第三方语音助手集成…...
![](https://img-blog.csdnimg.cn/236d0f23b2bd4ff6b8be7fb16ed28c84.png)
【算法|数组】快慢指针
算法|数组——快慢指针 引入 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。 不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。 元素的顺序可以改变。你…...
![](https://www.ngui.cc/images/no-images.jpg)
C++字符串:使用 std::string
C字符串:使用 std::string 初始化方法一 std::string 变量名称 { “字符串”}; std::string str { " 这是一个字符串" };std::cout << str; std::cin >> str;初始化方法二 std::string 变量名称 { “字符串”&#x…...
![](http://hi.csdn.net/attachment/201004/15/1930218_1271320383168a.jpg)
百度手机网站建设/网络推广的手段
转:http://blog.donews.com/gengmao/archive/2004/08/09/63382.aspx 有两个 1、SGA trace 2、sql monitor TOAD 工具如下: SQLMonitor是TOAD 7.5带的一个工具。利用它可以监视本地进程通过SQL*Net发送的SQL语句,非常方便。没有它之前&…...
![](https://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif)
31省新增最新消息/湖南seo优化首选
【题目描述】 物流公司要把一批货物从码头A运到码头B。由于货物量比较大,需要n天才能运完。货物运输过程中一般要转停好几个码头。物流公司通常会设计一条固定的运输路线,以便对整个运输过程实施严格的管理和跟踪。由于各种因素的存在,有的时…...
![](/images/no-images.jpg)
怎样创建个人购物网站/b站推广入口2023破解版
由于工作和学习的需要,要在本本上安装SQL SERVER 2005 开发版(本本的操作系统是XP,所以不能安装Enterprise版本,而Express版本的功能又十分有限),去微软的官方网站搜索了一下sql server 2005 developer,找到了一些关于…...
![](/images/no-images.jpg)
做飞象金服的网站/湖南seo优化
我有一个溢出:跨越400%文档窗口宽度的自动容器。因此,我的页面上有一个水平滚动条。我在这个容器中也有多个div,它们有不同的左边位置。当我点击它们时,我需要获得每个容器的左侧位置。我使用$(this).offset()。left&a…...
![](/images/no-images.jpg)
珠海市企业网站建设/中国站长网站
正则表达式使用一种数学算法来解决计算机程序中的文本检索,匹配等问题,正则表达式语言是一种专门用来处理字符串的语言。可以认为正则表达式表达了一个字符串的书写规则。 正则表达式是由普通字符以及特殊字符(元字符)组成的文字…...
![](/images/no-images.jpg)
上海做网站的公/做网站的流程与步骤
最高人民法院《关于适用<中华人民共和国民法典>婚姻家庭编的解释(一)》第二十九条规定:“当事人结婚前,父母为双方购置房屋出资的,该出资应当认定为对自己子女个人的赠与,但父母明确表示赠与双方的除…...