Node.js v0.10.31API手冊-加密
Posted jzdwajue
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Node.js v0.10.31API手冊-加密相关的知识,希望对你有一定的参考价值。
Node.js v0.10.31API手冊-文件夹
加密(Crypto)
使用 require(‘crypto‘)
来调用该模块。
crypto模块提供在HTTPS或HTTP连接中封装安全凭证的方法。
它提供OpenSSL中的一系列哈希方法,包含hmac、cipher、decipher、签名和验证等方法的封装。
crypto.getCiphers()
返回一个数组,包括支持的加密算法的名字。
演示样例:
var ciphers = crypto.getCiphers();
console.log(ciphers); // [‘AES-128-CBC‘, ‘AES-128-CBC-HMAC-SHA1‘, ...]
crypto.getHashes()
返回一个包括所支持的哈希算法的数组。
演示样例:
var hashes = crypto.getHashes();
console.log(hashes); // [‘sha‘, ‘sha1‘, ‘sha1WithRSAEncryption‘, ...]
crypto.createCredentials(details)
创建一个加密凭证对象。接受一个可选的參数对象:
-
pfx
: 一个字符串或者buffer对象。代表经PFX或者PKCS12编码产生的私钥、证书以及CA证书 -
key
: 一个字符串,代表经PEM编码产生的私钥 -
passphrase
: 私钥或者pfx的password -
cert
: 一个字符串。代表经PEM编码产生的证书 -
ca
: 一个字符串或者字符串数组,表示可信任的经PEM编码产生的CA证书列表 -
crl
: 一个字符串或者字符串数组。表示经PEM编码产生的CRL(证书吊销列表 Certificate Revocation List) -
ciphers
: 一个字符串,表示须要使用或者排除的加密算法 能够在http://www.openssl.org/docs/apps/ciphers.html#CIPHER_LIST_FORMAT 查看很多其它关于加密算法格式的资料。
ca
。node.js会使用http://mxr.mozilla.org/mozilla/source/security/nss/lib/ckfw/builtins/certdata.txt提供的公共可信任的CA列表。
crypto.createHash(algorithm)
创建并返回一个哈希对象,一个使用所给算法的用于生成摘要的加密哈希。
algorithm
取决与平台上所安装的
OpenSSL 版本号所支持的算法。比方‘sha1‘
、‘md5‘
、‘sha256‘
、‘sha512‘
等等。在近期的发行版本号中。openssl
list-message-digest-algorithms
会显示可用的摘要算法。
演示样例:这段程序会计算出一个文件的
sha1 摘要值。
var filename = process.argv[2];
var crypto = require(‘crypto‘);
var fs = require(‘fs‘);
var shasum = crypto.createHash(‘sha1‘);
var s = fs.ReadStream(filename);
s.on(‘data‘, function(d) {
shasum.update(d);
});
s.on(‘end‘, function() {
var d = shasum.digest(‘hex‘);
console.log(d +
以上是关于Node.js v0.10.31API手冊-加密的主要内容,如果未能解决你的问题,请参考以下文章
KoaHub.JS基于Node.js开发的Koa 生成验证码插件代