返回顶部
首页 > 资讯 > 前端开发 > JavaScript >JS中常见编码及加密方式解析
  • 928
分享到

JS中常见编码及加密方式解析

2024-04-02 19:04:59 928人浏览 八月长安
摘要

目录base64Md5AESAES的三要素AES工作模式区别AES的加密流程js-AES、base64、SHA256、RSA等加解密库AES的特点、特征Ascii码DESbase64

base64

#特征:结尾可能有"=="号
#编码
# 想将字符串转编码成base64,要先将字符串转换成二进制数据
url = "https://www.cnblogs.com/songzhixue/"
bytes_url = url.encode("utf-8")
str_url = base64.b64encode(bytes_url)  # 被编码的参数必须是二进制数据
print(str_url)
b'aHR0cHM6Ly93D3cuY25ibG9ncy5jb20vc29uZ3poaXh1ZS8='
#解码
# 将base64解码成字符串
import base64
url = "aHR0cHM6Ly93d3cuY25ibG9ncy5jb20vc29uZ3poaXh1ZS8="
str_url = base64.b64decode(url).decode("utf-8")
print(str_url)
'Https://www.cnblogs.com/songzhixue/'

Md5

#注意:md5是哈希,不是加密
#特征:32位
#1.编码
md = hashlib.md5()   #  加密,不可逆
md.update('hello'.encode('utf-8'))   # 往对象里传数据加密  ,update只能接受bytes类型
md.update(b'hello')
print(md.hexdigest())
结果:23b431acfeb41e15d466d75de822307c

#编码加盐
#2.加盐  :自己添加的东西和客户的真密码一起加密,自己添加的东西可以是动态的
md = hashlib.md5()
md.update(b'yan.com')
md.update(b'hello')   # 加密
print(md.hexdigest())  # 获取密文

AES

特征:对称加密,加密解密用的是同样的密钥。对称加密是最快速、最简单的一种加密方式

对称加密:适合经常发送数据的场合

非对称加密:加密和解密用的密钥是不同的,通常加密解密的速度比较慢,适合偶尔发送数据的场合。优点是密钥传输方便。

AES的三要素

密钥:128、192、256

填充:
    NoPadding
    PKCS7Padding
    ZeroPadding
    AnsiX923
    lso10126
    lso97971

工作模式:
    CBC、ECB、CTR、CFB、OFB

AES工作模式区别

工作模式:
    CBC、ECB、CTR、CFB、OFB

ECB模式:    

1、简单 

2、有利于计算

3、相同的明文块经过加密会变成相同的密文块,因此安全性较差

CBC模式:

1、无法并行计算,性能上不如ECB

2、引入初始化向量IV,增加复杂度。

3、安全性高

AES的加密流程

1、把明文按照128bit拆分成若干个明文块

2、按照选择的填充模式来填充最后一个明文块

3、每个明文块利用AES加密器和密钥,加密成密文块

JS-AES、base64、SHA256、RSA等加解密库

#利用nodejs中的crypto-js库
var CryptoJS = require("crypto-js")
CryptoJS.AES.encrypt(text,CryptoJS.enc.UTF8.parse(key),data={})

AES的特点、特征

1、有iv的是特征的是CBC工作模式

2、mode和padding标示的加密模式、填充方式

iv:初始向量

mode:工作模式

padding:填充方式

Ascii码

Ascii码是一种特定的编码方式,流行于欧洲国家,表达128常见的字符与操作符,表达力有限

DES

DES全称为Data Encryption Standard,即数据加密标准,是一种使用密钥加密的块算法,1977年被美国联邦政府的国家标准局确定为联邦资料处理标准(FIPS),并授权在非密级政府通信中使用,随后该算法在国际上广泛流传开来。

需要注意的是,在某些文献中,作为算法的DES称为数据加密算法(Data Encryption AlGorithm,DEA),已与作为标准的DES区分开来。

以上就是JS中常见编码及加密方式解析的详细内容,更多关于JS编码及加密方式的资料请关注编程网其它相关文章!

--结束END--

本文标题: JS中常见编码及加密方式解析

本文链接: https://lsjlt.com/news/145678.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • JS中常见编码及加密方式解析
    目录base64Md5AESAES的三要素AES工作模式区别AES的加密流程JS-AES、base64、SHA256、RSA等加解密库AES的特点、特征Ascii码DESbase64...
    99+
    2024-04-02
  • 数据加密存储常见的加密方式
    数据加密存储五种常见的加密方式先总结下:数据加密存储五种常见的加密方式:数据加密存储方式一、MD5加密(加密不可逆)。数据加密存储方式二、Base64位加密(可加密也可解密)。数据加密存储方式三、sha1加密(加密不可逆)。数据加密存储方式...
    99+
    2023-09-07
    安全 网络 服务器 Powered by 金山文档
  • Go语言编码探究:常见编码格式解析
    Go语言编码探究:常见编码格式解析 在软件开发中,数据编码是一个至关重要的概念。不同的编码格式对于数据的存储、传输、处理等都有着不同的影响,而合适的编码格式能够提高数据的效率和可靠性。...
    99+
    2024-04-02
  • Python中有哪些常见的加密方式
    Python中有哪些常见的加密方式,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。前言我们所说的加密方式,都是对二进制编码的格式进行加密的,对应到Python中,则是我们的B...
    99+
    2023-06-02
  • python代码的几种常见加密方式分享
    目录1.发行.pyc文件1.1 编译加密1.2 是否可逆1.3是否影响模块调用2.代码混淆3.生成exe可执行文件4…py文件转化为.so文件5.附加运行辅助包文件方式...
    99+
    2024-04-02
  • JavaScript中常见加密解密方法是什么
    这篇文章主要介绍了JavaScript中常见加密解密方法是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇JavaScript中常见加密解密方法是什么文章都会有所收获,下面我们一起来看看吧。安装npm ins...
    99+
    2023-07-05
  • Python/JS实现常见加密算法的示例代码
    目录前言一、编码,加密二、常见编码1.Base642. Base64 - JS实现3. Base64 - Python实现4.Unicode5.Urlencode三、线性散列算法(签...
    99+
    2024-04-02
  • Python常见的几种数据加密方式
    目录一、md5加密解密增加破解成本的方法SHA1安全哈希算法二、Base64伪加密三、DES/AESAES和DES的区别破解方法四、RSA非对称加密算法使用流程和场景介绍公钥私钥生成...
    99+
    2024-04-02
  • C++中常见的编码规范问题解析
    C++中常见的编码规范问题解析在进行C++开发过程中,遵循一定的编码规范是非常重要的。良好的编码规范可以提高代码的可读性、可维护性和可扩展性,有助于团队合作和项目的成功实施。然而,在实际的开发中,我们常常会遇到一些常见的编码规范问题。本文将...
    99+
    2023-10-22
    命名规范 缩进问题 注释风格
  • Python常见的数据加密方式有哪些
    这篇文章主要介绍了Python常见的数据加密方式有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python常见的数据加密方式有哪些文章都会有所收获,下面我们一起来看看吧。前言:常见的加密算法基本分为这几类...
    99+
    2023-06-30
  • Python编程密码学文件加密与解密代码解析
    目录本章要点1 纯文本文件2 使用置换密码加密文件的源代码transpositionFileCipher.py3 运行置换密码加密文件程序的样例4 文件操作4.1 打开文件4.2 数...
    99+
    2024-04-02
  • 5 个常见 Discuz 密码错误原因及解决方案!
    5 个常见 Discuz 密码错误原因及解决方案! 随着互联网的高速发展,Discuz 论坛系统成为了许多网站建设者的首选,它简单易用,功能强大,深受广大网站管理员的喜爱。然而,在使用...
    99+
    2024-03-03
    密码错误分析 解决方案建议 用户注册
  • 美国服务器中有哪些常见的加密方式
    美国服务器中常见的加密方式有:1、Base64,将4个字节还原成3个字节,再根据不同的数据形式,把字节数组重新整理成数据;2、MD5,将任意长度的字节串变换成一个128 bit的大整数,且是不可逆的字符串变换,无法将一个MD5的值变换回原始...
    99+
    2024-04-02
  • .NET中常见的加解密算法详解
    目录一、MD5不可逆加密1、校验密码2、防篡改3、急速秒传4、源代码管理工具二、对称可逆加密三、非对称可逆加密一、MD5不可逆加密 不可逆加密是指将原文加密成密文以后,无法将密文解密...
    99+
    2024-04-02
  • 总结常见的PHP加密解决方案
    随着互联网的不断发展和深入,网站变得越来越普及。同时,由于信息安全的重要性日益增加,越来越多的网站采用了加密技术来确保数据的安全性。PHP作为一种广泛使用的服务器端脚本语言,也不例外。本文将介绍一些PHP加密解决方案,以帮助您保护网站的信息...
    99+
    2023-05-14
  • Python中常见的加密解密算法有哪些
    1.url encode加密简介:当url地址含有中文,或者参数有中文的时候,这个算是很正常了,但是把这样的url作为参数传递的时候(最常见的callback),需要把一些中文甚至'/'做一下编码转换。# -*- codin...
    99+
    2023-05-16
    Python
  • PHP中常见的路由解析实现方式
    在Web开发中,路由(Routing)是指根据用户请求的URL,将请求分发给对应的处理程序或控制器。PHP作为一种流行的后端开发语言,有许多常见的方式来实现路由解析。本文将介绍一些PHP中常见的路由解析实现方式,并提供具体的代码示例。基于i...
    99+
    2023-10-21
    路由解析方式: PHP Route
  • LeetCode常见的PHP编程算法及其解析
    LeetCode是一个非常受欢迎的在线编程平台,它提供了大量的编程题目,涵盖了各种不同的算法和数据结构。对于PHP程序员来说,掌握LeetCode常见的编程算法是非常有必要的。本文将介绍一些常见的PHP编程算法,并给出详细的解析和演示代码...
    99+
    2023-08-16
    编程算法 leetcode 重定向
  • C++中常见的编码规范问题及修复方案
    C++中常见的编码规范问题及修复方案在C++编程中,遵循良好的编码规范是非常重要的。通过遵守规范,可以提高代码的可读性、可维护性和可扩展性,减少错误和bug的发生。本文将介绍C++中常见的编码规范问题,并给出相应的修复方案,同时附有具体的代...
    99+
    2023-10-22
    符合规范的命名方式。 同时避免冗余的注释。
  • golang中常用的几种编码解码方式
    当我们需要将一个编码格式转换成另一个编码格式时,就需要用到转码。在Go语言中,转码操作非常方便,可以使用内置的encoding包来快速完成转码操作。Go语言中的encoding包提供了许多常用的编码解码方式,例如JSON、XML、Base6...
    99+
    2023-05-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作