摘要:使用方法創(chuàng)建一個對象創(chuàng)建對象,加密算法為讀取該文件,為是文件的對象創(chuàng)建一個摘要輸出摘要算法算法將散列算法與一個密鑰結(jié)合在一起,以阻止對簽名完整性的破壞。
未完成
1. 加密crypto在crypto模塊中,為每一種加密算法定義了一個類
可以使用getCiphers方法查看在Node.js中所有能夠使用的加密算法crypto.getCiphers()
可以使用getHashes()方法查看在Node.js中所有能夠使用的散列算法crypto.getHashes()
2. 散列算法散列(哈希)算法用來實現(xiàn)一些重要處理,允許對一段數(shù)據(jù)進(jìn)行驗證的前提下,將該數(shù)據(jù)模糊化,或者為一大段數(shù)據(jù)提供一個校驗碼。
使用createHash方法創(chuàng)建一個hash對象crypto.createHash("algorithm");
const crypto = require("crypto"); const fs = require("fs"); const shasum = crypto.createHash("sha1");// 創(chuàng)建hash對象,加密算法為sha1 let file = fs.ReadStream("./fs.js");//讀取該文件,為s file.on("data", (d) => { console.log(d);//d是file文件的Buffer對象 shasum.update(d);// 創(chuàng)建一個摘要 }); file.on("end", () => { let d = shasum.digest("hex");// 輸出摘要 console.log(d); }); /** *3. HMAC算法* 74b68572a7259696f8458606d89a91a206fc3fd0 */
HMAC算法將散列算法與一個密鑰結(jié)合在一起,以阻止對簽名完整性的破壞。
使用createHmac方法創(chuàng)建一個hmac對象crypto.createHmac(algorithm, key)
algorithm為可以在Node.js中使用的算法
key為一個字符串,指定一個PEM格式的密鑰
在OpenSSL工具種,創(chuàng)建一個密鑰openssl genrsa -out key.pem 1024
const crypto = require("crypto"); const fs = require("fs"); let pem = fs.readFileSync("./key.pem"); let key = pem.toString("ascii"); let shasum = crypto.createHmac("sha1", key); let file = fs.ReadStream("./fs.js"); file.on("data", (data) => { console.log("data.toString()"); console.log(data.toString()); console.log("shasum.update(data)"); console.log(shasum.update(data)); }); file.on("end", () => { console.log("shasum.digest("hex")"); console.log(shasum.digest("hex")); });
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/92953.html
摘要:然而,在處理流或文件流時,必須要處理二進(jìn)制數(shù)據(jù)。因此,在中,定義了一個類,該類用來創(chuàng)建一個專門存放二進(jìn)制數(shù)據(jù)的緩存區(qū)。因為在計算字符串的長度時,以位子作為一個單位,而在計算緩存區(qū)的長度時,以字節(jié)作為一個單位。 buffer對象 1. 什么是buffer 在客戶端Javascript腳本代碼中,對于二進(jìn)制數(shù)據(jù)沒有提供一個很好的支持。然而,在處理TCP流或文件流時,必須要處理二進(jìn)制數(shù)據(jù)...
摘要:在中,提供模塊,以實現(xiàn)域名查找及域名解析的處理。方法用于將一個域名解析為一組記錄。記錄是域名服務(wù)器記錄,用來指定該域名由哪個服務(wù)器進(jìn)行解析?;卣{(diào)函數(shù)有兩個參數(shù),是域名解析失敗時觸發(fā)的錯誤對象,參數(shù)為一個數(shù)組,其中存放了所有獲取到的記錄。 1. DNS 在Node.js中,提供DNS模塊,以實現(xiàn)域名查找及域名解析的處理。 在DNS模塊中,提供了三個主方法及一系列便捷方法。 reso...
摘要:對象與字符串對象的方法將對象中保存的數(shù)據(jù)轉(zhuǎn)換為字符串第一個參數(shù)用于指定對象中保存的文字編碼格式,默認(rèn)參數(shù)值為第二個參數(shù)和第三個參數(shù)用于指定被轉(zhuǎn)換數(shù)據(jù)的起始位置與結(jié)束位置,不包含結(jié)束位置對象的方法向已經(jīng)創(chuàng)建的對象中寫入字符串第一個參數(shù)為指定需 Buffer對象與字符串 1. Buffer對象的toString()方法 將Buffer對象中保存的數(shù)據(jù)轉(zhuǎn)換為字符串 toString([e...
摘要:和的區(qū)別服務(wù)器使用協(xié)議服務(wù)器使用協(xié)議服務(wù)器需要向證書授權(quán)中心申請證書一般免費(fèi)證書何紹需要交費(fèi)在少許讀客戶端有要求的情況下也會要求客戶端使用證書服務(wù)器于客戶端之間傳輸?shù)氖敲魑臄?shù)據(jù)而服務(wù)器于客戶端之間傳輸?shù)氖墙?jīng)過安全加密后的密文數(shù)據(jù)服務(wù)器通常使 4. HTTP和HTTPS的區(qū)別 HTTPS服務(wù)器使用HTTPS協(xié)議,HTTP服務(wù)器使用HTTP協(xié)議. HTTPS服務(wù)器需要向證書授權(quán)(Ce...
閱讀 2689·2021-10-22 09:55
閱讀 2019·2021-09-27 13:35
閱讀 1272·2021-08-24 10:02
閱讀 1495·2019-08-30 15:55
閱讀 1205·2019-08-30 14:13
閱讀 3478·2019-08-30 13:57
閱讀 1980·2019-08-30 11:07
閱讀 2456·2019-08-29 17:12