vue base64加密对象_想加密JavaScript怎么办,试试这款加密库!
大家好,我是为广大程序员兄弟操碎了心的小编,每天推荐一个小工具/源码,装满你的收藏夹,每天分享一个小技巧,让你轻松节省开发效率,实现不加班不熬夜不掉头发,是我的目标!
今天要推荐的是一款javascript加密库crypto-js,crypto-js是一个前端Javascript标准加密算法库,crypto-js为 JavaScript 提供了各种各样的加密算法。有时候项目涉及到的敏感数据比较多,为了信息安全,我们常常需要对一些数据进行接口加密处理,如编码、将明文转化为暗文、加密比对,目前已支持的算法包括:MD5、 SHA-1、SHA-256、AES、Rabbit、MARC4、HMAC、HMAC-MD5、HMAC-SHA1、HMAC-SHA256、PBKDF2等。
在线测试:https://tool.oschina.net/encrypt
安装
使用npm进行安装
npm install crypto-js
使用
支持nodejs和浏览器
- ES6
import sha256 from 'crypto-js/sha256';import hmacSHA512 from 'crypto-js/hmac-sha512';import Base64 from 'crypto-js/enc-base64';const message, nonce, path, privateKey; // ...const hashDigest = sha256(nonce + message);const hmacDigest = Base64.stringify(hmacSHA512(path + hashDigest, privateKey));
- 模块化
var AES = require("crypto-js/aes");var SHA256 = require("crypto-js/sha256");...console.log(SHA256("Message"));
- 直接引用
AES加密
- 明文加密
var CryptoJS = require("crypto-js");// Encryptvar ciphertext = CryptoJS.AES.encrypt('my message', 'secret key 123').toString();// Decryptvar bytes = CryptoJS.AES.decrypt(ciphertext, 'secret key 123');var originalText = bytes.toString(CryptoJS.enc.Utf8);
console.log(originalText); // 'my message'
- 对象加密
var CryptoJS = require("crypto-js");var data = [{id: 1}, {id: 2}]// 加密var ciphertext = CryptoJS.AES.encrypt(JSON.stringify(data), 'secret key 123').toString();// 解密var bytes = CryptoJS.AES.decrypt(ciphertext, 'secret key 123');var decryptedData = JSON.parse(bytes.toString(CryptoJS.enc.Utf8));
console.log(decryptedData); // [{id: 1}, {id: 2}]
结尾
本期就分享到这里,我是小编南风吹,专注分享好玩有趣、新奇、实用的开源项目及开发者工具、学习资源!希望能与大家共同学习交流,欢迎关注我的公众号**【Github导航站】**。
往期推荐
往期推荐
这款小众的响应式vue后台开发框架,让他滚去收藏夹吧
字节跳动的这款图标库和阿里杠上了
忍住别笑!JS和JAVA的区别,一张图让你秒懂!
想接私活?试试这款Spring boot后台框架,效率飞起
这款优秀的Vue+ElementUI桌面端一站式框架,爱了!
vue base64加密对象_想加密JavaScript怎么办,试试这款加密库!相关推荐
- vue传递数组对象_详解vue组件三大核心概念
前言 本文主要介绍属性.事件和插槽这三个vue基础概念.使用方法及其容易被忽略的一些重要细节.如果你阅读别人写的组件,也可以从这三个部分展开,它们可以帮助你快速了解一个组件的所有功能. 本文的代码请猛 ...
- python不能加密吗_为什么我不能解密我用pycrypto加密的内容?
我的代码是: 加密:from Crypto.Cipher import AES import base64 def encryption (privateInfo): BLOCK_SIZE = 16 ...
- java rsa加密解密_前端实现对请求参数进行RSA加密amp;解密,针对字符串过长进行分段加密amp;分段解密的处理...
前言 在需求开发中,为了安全起见,我们都会难免遇到需要对一些敏感参数进行加密或者解密.所以,今天给大家分享的就是使用jsencrypt对请求参数进行RSA加密与解密,发这篇文章其实主要因为近期我的一位 ...
- javascript 本地对象和内置对象_详解 JavaScript 面向对象
1. 概述 JavaScript面向对象比较难理解的点是类的继承.不管是es5写法还是es6写法,JavaScript继承的本质是原型链.具体可看我的上一篇文章: 田浩:详解原型.原型链.构造函.实例 ...
- javascript 无法修改 数组中对象_如何使用JavaScript中的Date对象
Date对象是一个内置函数,我们可以使用Date对象来显示日期,本篇文章就来给大家分享一篇有关于Date对象的使用方法. 内置函数我们可以使用new来创建 var 对象名称= new object() ...
- mysql 传输加密方式_请问各位大侠,要实现MYSQL加密传输,应该怎么做?
MYSQL加密传输应该怎么实现,有如下的操作步骤: To get secure connections to work with MySQL, you must do the following: I ...
- vue 变量定义 对象_详解Vue 全局变量,局部变量
局组件和局部组件 1.先定义组件 Vue.component('组件名', { 组件模板对象 }) 注意: 组件名不要使用原生的标签名, 若组件名定义时用的是驼峰命名法, 则调用时用中划线分割后小 ...
- mysql base64 加密解密_烂泥:base64加密与解密
本文由ilanniweb微信公众号提供友情赞助,首发于烂泥行天下 jenkins技术分享QQ群:571981257 一.什么是base64 base64是网络上最常见的用于传输8Bit字节码的编码方式 ...
- vue.js 密码加密_软件操作与排错专题_第五期文档及操作系统加密小攻略
今天我将给大家演示一下如何加密文件.文档.以及设置操作系统账户密码. 一.文件加密 1.Word文档密码的设置 (1)打开Word文件, 选择菜单栏的"文件". (2)点击&quo ...
- python软件加密、固定机器使用_如何用Python进行最常见的加密操作?(附最新400集Python教程)...
前言 我们所说的加密方式,都是对二进制编码的格式进行加密的,对应到Python中,则是我们的Bytes. 所以当我们在Python中进行加密操作的时候,要确保我们操作的是Bytes,否则就会报错. 将 ...
最新文章
- R语言data.table导入数据实战:data.table使用by函数进行数据分组(aggregate)
- 进入贝壳网_贝壳网app下载安装
- Wince C++串口编程
- shell 命令行实现
- 【PC工具】chrome浏览器插件vimium:传说上网可以不用鼠标。VIM入门工具,妈妈再也不用担心我学不会vim了...
- 【干货】Linux 网卡绑定的相关知识和技巧
- Leaflet中通过setZIndex实现图层层级控制
- java nanotime 重复_Java中System.nanoTime方法能作为一个唯一字符串来使用吗
- “开发一个静态 HTML 页面,我要价 18000 美元,有错吗?”
- 零基础学web前端难吗?新手该怎么学?
- mysql 表字段部分替换
- TypeError:Joi.validate is not a function 解决办法
- c语言 整数除以分数,2019年六年级数学上册 3.1分数除法(第1课时)分数除法的意义和整数除以分数练习题 新人教版 (I).doc...
- Kotlin 的静态代码分析工具
- 5G NR CDRX
- 并行计算、分布式计算、网格计算讲解
- 机器学习笔记(一)-局部加权回归(Locally weighted regression)LWR
- redis实现坐标附近查询
- 如何在地图上显示多个红包商店 vue
- 与文本内容无关的说话人识别概述——从特征到超矢量
热门文章
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_汇总
- 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_06 Properties集合_1_使用Properties集合存储数据,遍历取出集合中的数据...
- js设置radio单选框值选中
- 第三次作业_201731062533
- linux的sudo apt-get install 和dpkg -i package.deb命令
- Python Class System
- C#强化系列文章七:序列化和反序列化
- Discuz!NT 在线用户功能简介(转)
- 2019 支付宝App支付 --- PHP
- 【并发】关于并发、超卖处理的思路