NodeJs crypto加密制作token的實現(xiàn)代碼
Node.js 內(nèi)置的 Crypto 庫 ,它提供各種加密算法,可以非常方便地讓我們使用密碼技術,解決應用開發(fā)中的問題。主要支持 hash(哈希),hmac(密鑰哈希),cipher(編碼),decipher(解碼),sign(簽名)以及 verify(驗證)等。crypto 英文原意就是秘密成員的意思。
使用方法大概如下:
crypto.createHash(algorithm) 指定使用的加密方式
var crypto = require("crypto");//加密
crypto.getHashes()
顯示內(nèi)部支持的加密方式。
- hash.update(data) 指定要加密的內(nèi)容(data)
- hash.digest("hex") 指定加密的編碼方式,可以為hex binary或者base64。
舉個例子:
var crypto = require("crypto");//加密
var a = crypto.createHash("md5").update("12").digest('base64');
console.log(a)
加密結果為c20ad4d76fe97759aa27a0c99bff6710 對比使用 MD5 加密工具加密的相同

二、制作 token
// //登陸
app.post("/login" , (req,res)=>{
//處理post請求
var form = new formidable.IncomingForm();
form.parse(req, function(err, fields, files) {
//判定是否正確登陸
User.find({
"username" : fields.username ,
"password" : fields.password
}).exec((err,docs)=>{
if(docs.length){
//登陸成功
req.session.login = true;
req.session.username = fields.username;
var token = crypto.createHash("sha256").update(fields.username + fields.username).digest('hex');
res.json({"result" : 1 , "token": token});
}else{
res.json({"result" : -1});
}
});
});
});
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Node.js內(nèi)置模塊events事件監(jiān)聽發(fā)射詳解
這篇文章主要為大家介紹了Node.js內(nèi)置模塊events事件監(jiān)聽發(fā)射詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-02-02
autojs的nodejs打包成品app經(jīng)驗分享
這篇文章主要為大家介紹了autojs的nodejs打包成品app經(jīng)驗分享,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-01-01
nodejs中解決異步嵌套循環(huán)和循環(huán)嵌套異步的問題
本篇文章主要介紹了nodejs中解決異步嵌套循環(huán)和循環(huán)嵌套異步的問題,具有一定的參考價值,有興趣的可以了解一下2017-07-07
win系統(tǒng)下nodejs環(huán)境安裝配置
這篇文章主要介紹了win系統(tǒng)下nodejs環(huán)境安裝配置的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-05-05

