📅  最后修改于: 2023-12-03 15:33:08.456000             🧑  作者: Mango
Node.js 的 crypto
模块提供了各种加密算法和功能。crypto.constants
是该模块的一个属性,可以用于访问加密相关的常量。
以下是 crypto.constants
中一些常用的常量及其说明:
crypto.constants.OPENSSL_VERSION_NUMBER
: OpenSSL 版本号。crypto.constants.SSL_OP_ALL
: 所有 OpenSSL SSL_OP_* 标志的按位或。crypto.constants.SSL_OP_NO_TLSv1
: 不支持 TLSv1 协议。crypto.constants.SSL_OP_NO_TLSv1_1
: 不支持 TLSv1.1 协议。crypto.constants.SSL_OP_NO_TLSv1_2
: 不支持 TLSv1.2 协议。crypto.constants.SSL_OP_NO_SSLv2
: 不支持 SSLv2 协议。crypto.constants.SSL_OP_NO_SSLv3
: 不支持 SSLv3 协议。除了上面的常用常量之外,crypto.constants
中还有许多其他常量,如下:
crypto.constants.defaultCipherList
: 默认加密算法列表。crypto.constants.engine
: 引擎相关常量。crypto.constants.NPN_ENABLED
: NPN(Next Protocol Negotiation)是否启用。crypto.constants.OF_SECURE
: 是否安全。crypto.constants.OPENSSL_NO_SSL2
: 是否不支持 SSLv2。crypto.constants.OPENSSL_VERSION_TEXT
: OpenSSL 版本信息。crypto.constants.RSA_PKCS1_OAEP_PADDING
: RSA 填充方式。crypto.constants.SIGPIPE
: SIGPIPE 信号相关。以下代码示例演示了如何使用 crypto.constants
中的常量:
const crypto = require('crypto');
console.log(crypto.constants.OPENSSL_VERSION_NUMBER);
console.log(crypto.constants.defaultCipherList);
console.log(crypto.constants.RSA_PKCS1_OAEP_PADDING);
输出结果如下:
268439647
TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-CHACHA20-POLY1305
4