NodeJS-crypto
来源:互联网 发布:什么是互联网大数据 编辑:程序博客网 时间:2024/05/19 06:38
一系列的安全编码:
const crypto = require('crypto');//md5const hash = crypto.createHash('md5');//可任意多次调用update,默认编码utf-8hash.update('Hello,world!');hash.update('Hello,nodejs!');console.log(hash.digest('hex'));//hmac,多了一个密钥const hmac = crypto.createHmac('sha256','secret-key');hmac.update('Hello,world!');hmac.update('Hello,nodejs!');console.log(hmac.digest('hex'));//aesfunction aesEncrypt(data,key){ const cipher = crypto.createCipher('aes192',key); var crypted = cipher.update(data,'utf8','hex'); crypted += cipher.final('hex'); return crypted;}function aesDecrypt(encrypted,key){ const decipher = crypto.createDecipher('aes192',key); var decrypted = decipher.update(encrypted,'hex','utf8'); decrypted += decipher.final('utf8'); return decrypted;}var data = 'Hello,this is a secret message!';var key = 'Password!';var encrypted = aesEncrypt(data,key);var decrypted = aesDecrypt(encrypted,key);console.log('Plain text:'+data);console.log('Encrypted text:'+encrypted);console.log('Decrypted text:'+decrypted);//Diffie-Hellmanvar m1 = crypto.createDiffieHellman(512);var m1_keys = m1.generateKeys();var prime = m1.getPrime();var generator = m1.getGenerator();console.log('Prime:'+prime.toString('hex'));console.log('Generator:'+generator.toString('hex'));var m2 = crypto.createDiffieHellman(prime,generator);var m2_keys = m2.generateKeys();var m1_secret = m1.computeSecret(m2_keys);var m2_secret = m2.computeSecret(m1_keys);console.log('Secret of m1:'+m1_secret.toString('hex'));console.log('Secret of m2:'+m2_secret.toString('hex'));
0 0
- NodeJS-crypto
- nodejs中的Crypto模块
- nodejs 加密 Crypto
- nodejs Crypto使用
- nodejs加密模块crypto
- Crypto nodejs 加密
- nodeJS之crypto加密
- nodeJS之crypto加密
- 浅谈nodejs中的Crypto模块
- 浅谈nodejs中的Crypto模块
- 浅谈nodejs中的Crypto模块
- NodeJS 内置模块之crypto
- nodejs加密Crypto简单例子
- nodejs中的加密模块 crypto 模块
- crypto-js,require,nodejs,加密使用手册
- Crypto++
- Crypto++
- Crypto
- xml解析生成与解析
- android属性动画
- 操作与队列
- 告别2016迎接2017,分享一些第三方插件
- 5分钟DIY一个自定义单选框单选按钮
- NodeJS-crypto
- Spring源码剖析——依赖注入实现原理
- 软件架构概论
- android6.0下载文件路径设置
- Codeforces_607B:Zuma(区间DP)
- 视音频数据处理入门:PCM音频采样数据处理
- android-fragment的静态和动态注册。
- 单例
- SSM(八)动态切换数据源