Node.js Crypto 模組
示例
加密文字 'abc'
var crypto = require('crypto');
var mykey = crypto.createCipher('aes-128-cbc', 'mypassword');
var mystr = mykey.update('abc', 'utf8', 'hex')
mystr += mykey.final('hex');
console.log(mystr); //34feb914c099df25794bf9ccb85bea72
執行示例 »
示例
解密回 'abc'
var crypto = require('crypto');
var mykey = crypto.createDecipher('aes-128-cbc', 'mypassword');
var mystr = mykey.update('34feb914c099df25794bf9ccb85bea72', 'hex', 'utf8')
mystr += mykey.final('utf8');
console.log(mystr); //abc
執行示例 »
定義和用法
crypto 模組提供了一種處理加密資料的方法。
語法
將 crypto 模組包含在您的應用程式中的語法
var crypto = require('crypto');
Crypto 屬性和方法
方法 | 描述 |
---|---|
constants | 返回一個包含 Crypto 常量的物件 |
fips | 檢查是否正在使用 FIPS 加密提供程式 |
createCipher() | 使用指定的演算法和密碼建立 Cipher 物件 |
createCipheriv() | 使用指定的演算法、密碼和初始化向量建立 Cipher 物件 |
createDecipher() | 使用指定的演算法和密碼建立 Decipher 物件 |
createDecipheriv() | 使用指定的演算法、密碼和初始化向量建立 Decipher 物件 |
createDiffieHellman() | 建立 DiffieHellman 金鑰交換物件 |
createECDH() | 建立橢圓曲線 Diffie Hellman 金鑰交換物件 |
createHash() | 使用指定的演算法建立 Hash 物件 |
createHmac() | 使用指定的演算法和金鑰建立 Hmac 物件 |
createSign() | 使用指定的演算法和金鑰建立 Sign 物件 |
createVerify() | 使用指定的演算法建立 Verify 物件 |
getCiphers | 返回支援的加密演算法陣列 |
getCurves() | 返回支援的橢圓曲線陣列 |
getDiffieHellman() | 返回預定義的 Diffie Hellman 金鑰交換物件 |
getHashes() | 返回支援的雜湊演算法陣列 |
pbkdf2() | 建立基於密碼的金鑰派生函式 2 實現 |
pbkdf2Sync() | 建立同步的基於密碼的金鑰派生函式 2 實現 |
privateDecrypt() | 使用私鑰解密資料 |
timingSafeEqual() | 比較兩個 Buffer,如果相等則返回 true,否則返回 false |
privateEncrypt() | 使用私鑰加密資料 |
publicDecrypt() | 使用公鑰解密資料 |
publicEncrypt() | 使用公鑰加密資料 |
randomBytes() | 建立隨機資料 |
setEngine() | 為部分或所有 OpenSSL 函式設定引擎 |