openssl-glossary
名称
openssl-glossary - OpenSSL 术语表
描述
- 算法
-
OpenSSL 中的加密原语,如 SHA256 摘要或 AES 加密,被称为“算法”。对于任何给定的算法,可能存在多个可供使用的实现。
- ASN.1,ASN1
-
ASN.1(“抽象语法符号一号”)是一种用于描述抽象类型和值的符号。它在 ITU-T 文档 X.680 到 X.683 中定义。
https://www.itu.int/rec/T-REC-X.680, https://www.itu.int/rec/T-REC-X.681, https://www.itu.int/rec/T-REC-X.682, https://www.itu.int/rec/T-REC-X.683
- 基础提供程序
-
一个 OpenSSL 提供程序,其中包含 OpenSSL 密钥的编码器和解码器。基础提供程序中的所有算法实现也都在默认提供程序中可用。
- 解码器
-
解码器是一种用于将密钥和参数从某些外部格式(如 PEM 或 DER)解码的算法。
- 默认提供程序
-
一个 OpenSSL 提供程序,其中包含最常见的 OpenSSL 算法实现。如果其他提供程序不可用,它会默认加载。基础提供程序中的所有算法实现也都在默认提供程序中可用。
- DER(“区分编码规则”)
-
DER 是数据的二进制编码,根据 ASN.1 规范进行结构化。这是一种常见的编码,用于加密对象,如私钥和公钥、证书、CRL 等。
它在 ITU-T 文档 X.690 中定义
- 编码器
-
编码器是一种用于将密钥和参数编码为某些外部格式(如 PEM 或 DER)的算法。
- 显式获取
-
显式获取是一种获取类型(参见获取)。显式获取是通过函数调用来获取代表实现的算法对象,例如 EVP_MD_fetch(3) 或 EVP_CIPHER_fetch(3)
- 获取
-
获取是通过查看可用的算法实现,应用选择条件(通过属性查询字符串),最后选择将要使用的实现的过程。
另见显式获取和隐式获取。
- FIPS 提供程序
-
一个 OpenSSL 提供程序,其中包含根据 FIPS 140-2 标准验证过的 OpenSSL 算法实现。
- 隐式获取
-
隐式获取是一种获取类型(参见获取)。隐式获取是使用没有关联实现的算法对象,例如 EVP_sha256(3) 或 EVP_aes_128_cbc(3) 的返回值。使用隐式获取,会在首次使用算法时,使用默认选择条件自动获取实现。
- 遗留提供程序
-
一个 OpenSSL 提供程序,其中包含被认为不安全或不再常用的算法实现。
- 库上下文
-
OpenSSL 中的库上下文由类型 OSSL_LIB_CTX 表示。可以将其视为配置选项适用的范围。如果应用程序没有显式创建库上下文,则使用“默认”上下文。许多 OpenSSL 函数可以接受库上下文作为参数。始终可以使用 NULL 值来指示默认库上下文。
- MSBLOB
-
MSBLOB 是 Microsoft 特定的 RSA 和 DSA 密钥(私钥和公钥)的二进制格式。此形式从未使用密码保护。
- 空提供程序
-
一个 OpenSSL 提供程序,其中不包含任何算法实现。这对于阻止默认提供程序在库上下文中自动加载很有用。
- 操作
-
操作是一组具有共同目的的 OpenSSL 函数,例如加密或摘要。
- PEM(“隐私增强邮件”)
-
PEM 是一种用于将二进制内容编码为邮件和 ASCII 友好形式的格式。内容是一系列 base64 编码的线,被自己的线上的开始/结束标记包围。例如
-----BEGIN PRIVATE KEY----- MIICdg.... ... bhTQ== -----END PRIVATE KEY-----
可选的标题行可能出现在开始行之后,它们的存在取决于正在写入或读取的对象的类型。
对于所有 OpenSSL 用途,二进制内容应为 DER 编码结构。
这在 IETF RFC 1421 中定义
- PKCS#8
-
PKCS#8 是 ASN.1 结构的规范,OpenSSL 用它以与密钥类型无关的方式存储或传输任何私钥。有两个结构值得注意的是,一个是包含未加密形式的密钥数据的结构(称为“PrivateKeyInfo”),另一个是加密包装结构(称为“EncryptedPrivateKeyInfo”)。
这在 RFC 5208 中指定
- 属性
-
属性是分类和选择算法实现的一种方式。属性是表示为字符串的键值对。例如,默认提供程序中的所有算法实现都具有属性“provider=default”。算法实现可以定义多个属性。
另见属性查询字符串。
- 属性查询字符串
-
属性查询字符串是包含一系列属性的字符串,可用于选择算法实现。例如,查询字符串“provider=example,foo=bar”将选择来自“example”提供程序的算法,这些算法为它们定义了“foo”属性,其值为“bar”。
属性查询字符串在获取过程中使用。参见获取。
- 提供程序
-
OpenSSL 中的提供程序是将算法实现分组在一起的组件。提供程序可以来自 OpenSSL 本身或来自第三方。
- PVK
-
PVK 是 Microsoft 特定的 RSA 和 DSA 私钥的二进制格式。此形式可以使用密码保护。
- SubjectPublicKeyInfo
-
SubjectPublicKeyInfo 是一个 ASN.1 结构,OpenSSL 用它以与密钥类型无关的方式存储和传输任何公钥。
这在证书规范 RFC 5280 中指定
历史
此术语表是在 OpenSSL 3.0 中添加的。
版权
版权所有 2020-2022 OpenSSL 项目作者。保留所有权利。
根据 Apache 许可证 2.0 版(“许可证”)授权。除非符合许可证,否则您不得使用此文件。您可以在源代码分发中的 LICENSE 文件或 https://www.openssl.org/source/license.html 中获取许可证副本。