NodeJs crypto加密制作token的實(shí)現(xiàn)代碼
Node.js 內(nèi)置的 Crypto 庫 ,它提供各種加密算法,可以非常方便地讓我們使用密碼技術(shù),解決應(yīng)用開發(fā)中的問題。主要支持 hash(哈希),hmac(密鑰哈希),cipher(編碼),decipher(解碼),sign(簽名)以及 verify(驗(yàn)證)等。crypto 英文原意就是秘密成員的意思。
使用方法大概如下:
crypto.createHash(algorithm) 指定使用的加密方式
var crypto = require("crypto");//加密
crypto.getHashes()
顯示內(nèi)部支持的加密方式。
- hash.update(data) 指定要加密的內(nèi)容(data)
- hash.digest("hex") 指定加密的編碼方式,可以為hex binary或者base64。
舉個(gè)例子:
var crypto = require("crypto");//加密
var a = crypto.createHash("md5").update("12").digest('base64');
console.log(a)
加密結(jié)果為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)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
PHPStorm中如何對nodejs項(xiàng)目進(jìn)行單元測試詳解
這篇文章主要給大家介紹了關(guān)于PHPStorm中如何對nodejs項(xiàng)目進(jìn)行單元測試的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-02-02
Node.js內(nèi)置模塊events事件監(jiān)聽發(fā)射詳解
這篇文章主要為大家介紹了Node.js內(nèi)置模塊events事件監(jiān)聽發(fā)射詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02
autojs的nodejs打包成品app經(jīng)驗(yàn)分享
這篇文章主要為大家介紹了autojs的nodejs打包成品app經(jīng)驗(yàn)分享,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01
node.js 中國天氣預(yù)報(bào) 簡單實(shí)現(xiàn)
本文主要介紹使用node.js做一個(gè)自用的天氣插件,需要的朋友可以參考下。2016-06-06
詳解基于node的前端項(xiàng)目編譯時(shí)內(nèi)存溢出問題
本篇文章主要介紹了基于node的前端項(xiàng)目編譯時(shí)內(nèi)存溢出問題,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-08-08
nodejs中解決異步嵌套循環(huán)和循環(huán)嵌套異步的問題
本篇文章主要介紹了nodejs中解決異步嵌套循環(huán)和循環(huán)嵌套異步的問題,具有一定的參考價(jià)值,有興趣的可以了解一下2017-07-07
win系統(tǒng)下nodejs環(huán)境安裝配置
這篇文章主要介紹了win系統(tǒng)下nodejs環(huán)境安裝配置的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05
Node.js使用多進(jìn)程提高任務(wù)執(zhí)行效率
在Node.JS中使用多進(jìn)程非常簡單,合理使用多進(jìn)程,可以解放硬件的能力,讓軟件的運(yùn)行效率得到肉眼可見的提升。本文詳細(xì)講解了Node.js使用多進(jìn)程提高任務(wù)執(zhí)行效率的方法,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-09-09

