温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

nodejs渐入佳境[23]-hash函数

发布时间:2020-10-16 09:57:28 阅读:561 作者:jonson_jackson 栏目:开发技术
前端开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

加密库

1
npm install --save crypto-js

使用hash函数

123456
const {SHA256} = require('crypto-js');var message = 'I am user number 3';var hash = SHA256(message).toString();console.log(`Message: ${message}`);console.log(`Hash: ${hash}`);

返回值:

12
Message: I am user number 3Hash: 9da4d19e100809d42da806c2b7df5cf37e72623d42f1669eb112e23f5c9d45a3

利用哈希模拟数据的加密解密

12345678910111213141516
const {SHA256} = require('crypto-js');var data = {  id: 4};var token = {  data,  hash: SHA256(JSON.stringify(data) + 'somesecret').toString()  // 密码+data 并hash}//如果data和密码都是正确的,那么数据没有被修改过。否则数据被修改。var resultHash = SHA256(JSON.stringify(token.data) + 'somesecret').toString();if (resultHash === token.hash) {  console.log('Data was not changed');} else {  console.log('Data was changed. Do not trust!');}

jsonwebtoken进行数据的加密解密

123456789101112
const {SHA256} = require('crypto-js');const jwt = require('jsonwebtoken');var data = {  id: 10};var token = jwt.sign(data, '123abc');   //加密console.log(token);var decoded = jwt.verify(token, '123abc'); //解密console.log('decoded', decoded);
123
返回值eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MTAsImlhdCI6MTU0MzM5NzgwMn0.TMQoQEsCuUptXkix0-vYCN5FGJnynj7tSSeMda33giAdecoded { id: 10, iat: 1543397802 }
  • 本文链接: https://dreamerjonson.com/2018/11/28/node-23-hash/

  • 版权声明: 本博客所有文章除特别声明外,均采用 CC BY 4.0 CN协议 许可协议。转载请注明出处!

nodejs渐入佳境[23]-hash函数

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI

开发者交流群×