本文概述
- 什么是哈希
- 什么是HMAC
- 使用哈希和HMAC的加密示例
- 使用密码的加密示例
- 使用解密的解密示例
什么是哈希 散列是固定长度的位字符串, 即从某个任意的源数据块在程序上和确定性地生成的。
什么是HMAC HMAC代表基于哈希的消息身份验证代码。这是一个将哈希算法应用于数据和密钥的过程, 从而导致单个最终哈希。
使用哈希和HMAC的加密示例 【Node.js加密示例】文件:crypto_example1.js
const crypto = require('crypto');
const secret = 'abcdefg';
const hash = crypto.createHmac('sha256', secret)
.update('Welcome to srcmini')
.digest('hex');
console.log(hash);
打开Node.js命令提示符并运行以下代码:
node crypto_example1.js
文章图片
使用密码的加密示例 文件:crypto_example2.js
const crypto = require('crypto');
const cipher = crypto.createCipher('aes192', 'a password');
var encrypted = cipher.update('Hello srcmini', 'utf8', 'hex');
encrypted += cipher.final('hex');
console.log(encrypted);
打开Node.js命令提示符并运行以下代码:
node crypto_example2.js
文章图片
使用解密的解密示例 文件:crypto_example3.js
const crypto = require('crypto');
const decipher = crypto.createDecipher('aes192', 'a password');
var encrypted = '4ce3b761d58398aed30d5af898a0656a3174d9c7d7502e781e83cf6b9fb836d5';
var decrypted = decipher.update(encrypted, 'hex', 'utf8');
decrypted += decipher.final('utf8');
console.log(decrypted);
打开Node.js命令提示符并运行以下代码:
node crypto_example3.js
文章图片
推荐阅读
- Node.js DNS
- Node.js调试器
- Node.js命令行选项
- Node.js子进程解析
- Node.js使用回调
- Node.js缓冲区Buffer
- Node.js断言测试
- Linux/Ubuntu/CentOS安装Node.js详细步骤
- Windows安装Node.js详细步骤