Heim >Web-Frontend >js-Tutorial >Verstehen Sie in einem Artikel schnell die Verwendung des Kryptomoduls in Nodejs
crypto ist ein Modul, das die Verschlüsselung und Entschlüsselung in node.js implementiert. Der folgende Artikel stellt Ihnen das Kryptomodul vor und stellt die Verwendung des Kryptomoduls für Hashing-(Hash-)Algorithmen, HMAC-Algorithmen, symmetrische Verschlüsselung und asymmetrische Verschlüsselung vor Verschlüsselungsmethode.
crypto
是node.js
中实现加密和解密的模块,在node.js
中,使用OpenSSL
类库作为内部实现加密解密的手段, OpenSSL
ist ein streng getestetes und zuverlässiges Implementierungstool für Verschlüsselungs- und Entschlüsselungsalgorithmen. [Empfohlenes Lernen: „nodejs-Tutorial“]
Windows-Version openSSL herunterladen
http://dl.pconline.com.cn/download/355862-1.html
Hash-Algorithmus wird auch Hash-Algorithmus genannt, der verwendet wird, um Eingaben beliebiger Länge in Ausgaben fester Länge umzuwandeln.
console.log(crypto.getHashes());
crypto.createHash(algorithm);//创建HASH对象 hash.update(data,[input_encoding]);//增加要添加摘要的数据,摘要输出前可以使用多次update hash.digest([encoding]);//输出摘要内容,输出后则不能再添加摘要内容3.3 Beispiel
var crypto = require('crypto'); var md5 = crypto.createHash('md5');//返回哈希算法 var md5Sum = md5.update('hello');//指定要摘要的原始内容,可以在摘要被输出之前使用多次update方法来添加摘要内容 var result = md5Sum.digest('hex');//摘要输出,在使用digest方法之后不能再向hash对象追加摘要内容。 console.log(result);4. Symmetrische Verschlüsselung
var fs = require('fs'); var shasum = crypto.createHash('sha1');//返回sha1哈希算法 var rs = fs.createReadStream('./readme.txt'); rs.on('data', function (data) { shasum.update(data);//指定要摘要的原始内容,可以在摘要被输出之前使用多次update方法来添加摘要内容 }); rs.on('end', function () { var result = shasum.digest('hex');//摘要输出,在使用digest方法之后不能再向hash对象追加摘要内容。 console.log(result); })
5. Asymmetrischer Verschlüsselungsalgorithmus
let hmac crypto.createHmac(algorithm,key); hmac.update(data);
Das obige ist der detaillierte Inhalt vonVerstehen Sie in einem Artikel schnell die Verwendung des Kryptomoduls in Nodejs. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!