当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Node.js decipher.update()用法及代码示例


decipher.update()方法是加密模块中的Decipher类的内置应用程序编程接口,用于根据给定的编码格式用数据更新解密器。

用法:

const dicipher.update(data[, inputEncoding][, outputEncoding])

参数:此方法采用以下参数:

  • data:它用于通过新内容更新解密。
  • inputEncoding:输入编码格式。
  • outputEncoding:输出编码格式。

返回值:此方法不返回任何值。

范例1: 文件名:index.js



Javascript

// Node.js program to demonstrate the 
// decipher.update() method 
  
// importing crypto module 
const crypto = require('crypto'); 
  
// Creating and initializng algorith and password 
const algorithm = 'aes-192-cbc'; 
const password = 'Password used to generate key'; 
  
// Getting key for the decipher object 
const key = crypto.scryptSync(password, 'salt', 24); 
  
// Creating and initializg the static iv 
const iv = Buffer.alloc(16, 0); 
  
// Creating and initializng the decipher object 
const decipher = crypto.createDecipheriv(algorithm, key, iv); 
  
// Encrypted using same algorithm, key and iv. 
const encrypted = 
'e5f79c5915c02171eec6b212d5520d44480993d7d622a7c4c2da32f6efda0ffa'; 
  
// Updating the data into decipher object 
let decrypted = decipher.update(encrypted, 'hex', 'utf8'); 
  
// Getting decrypted data 
decrypted += decipher.final('utf8'); 
  
// Display the result 
console.log("buffer:- " + decrypted);

输出:

buffer:- some clear text data

范例2: 文件名:index.js

Javascript

// Node.js program to demonstrate the 
// decipher.update() method 
  
// Importing crypto module 
const crypto = require('crypto'); 
  
// Creating and initializng algorith and password 
const algorithm = 'aes-192-cbc'; 
const password = 'Password used to generate key'; 
  
// Getting key for cipher object 
crypto.scrypt(password, 'salt', 24, 
  
    { N:512 }, (err, key) => { 
  
        if (err) throw err; 
  
        // Creating and initializg the static iv 
        const iv = Buffer.alloc(16, 0); 
  
        // Creating and initializng the decipher object 
        const decipher = crypto 
            .createDecipheriv(algorithm, key, iv); 
  
  
        // Encrypted using same algorithm, key and iv. 
        const encrypted = 
'e5f79c5915c02171eec6b212d5520d44480993d7d622a7c4c2da32f6efda0ffa'; 
  
        // updating the data into decipher object 
        const decrypted = decipher.update(encrypted, 'hex', 'utf8'); 
  
        console.log("buffer:- " + decipher); 
    });

输出:

buffer:- [object Object]

使用以下命令运行index.js文件:

node index.js

参考: https://nodejs.org/dist/latest-v12.x/docs/api/crypto.html#crypto_decipher_update_data_inputencoding_outputencoding

相关用法


注:本文由纯净天空筛选整理自RohitPrasad3大神的英文原创作品 Node.js decipher.update() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。